En dicho caso, si creas el segundo Frame desde el primero lo puedes hacer como lo hago en el siguiente codigo con el metodo createFrameB(), si lo estas haciendo desde otro lugar lo puedes hacer como lo hago en el metodo main().
Omite el hecho de que las clases son private static, esto lo hice para no crear otro archivo, ya que en este momento ando sin una IDE y programar en bloc de notas es un desastre.
Dime si con eso te ayudo en algo, o si necesitas otra cosa. (Por cierto, siempre queda la opcion de hacer que el ArrayList sea estatico, pero no lo recomiendo.)
Código (java) [Seleccionar]
private static class FrameA extends JFrame {
private ArrayList<String> arrayListA;
public FrameA() {
arrayListA = new ArrayList();
arrayListA.add("Vlue 1");
arrayListA.add("Vlue 2");
arrayListA.add("Vlue 3");
}
public ArrayList<String> getArrayListA() {
return this.arrayListA;
}
private void createFrameB() {
new FrameB(this.arrayListA).setVisible(true);
}
}
private static class FrameB extends JFrame {
private ArrayList<String> arrayListB;
public FrameB(ArrayList<String> arrayListA) {
this.arrayListB = arrayListA;
}
}
public static void main(String[] args) {
FrameA frameA = new FrameA();
frameA.setVisible(true);
new FrameB(frameA.getArrayListA()).setVisible(true);
}
Omite el hecho de que las clases son private static, esto lo hice para no crear otro archivo, ya que en este momento ando sin una IDE y programar en bloc de notas es un desastre.
Dime si con eso te ayudo en algo, o si necesitas otra cosa. (Por cierto, siempre queda la opcion de hacer que el ArrayList sea estatico, pero no lo recomiendo.)