Dobrze a czy mógłbym prosić o dosłownie wpisanie kodu jakiego nalezy uzyc na podstawie tego:
Mam utworzone 3 klasy:
Uzytkowik - przechowuje zmienne imie,nazwisko wiek i metody set i get
GlownaRamka - jest to po prostu ramka gdzie jest ArrayList<uzytkownik>, gdzie po kliknieciu przycisku dodanieUzytkownika jest tworzony new Uzytkownik
OknaDialogowe - jest to klasa z JDialog, ktorej wywołanie nastepuje po kliknieciu przycisku dodanieUzytkownika (równocześnie z tworzeniem i dodaniem new uzytkownik do Array)
Moje pytanie jak w poprawny sposób odwołać się do ArrayList<uzytkownik> w klasie OknaDialogowe (zaznaczyłem komentarzem miejsce gdzie chciałbym uzyskac dostep do ArrayList)
Klasa Uzytkownik
package test;
public class Uzytkownik
{
private String imie;
private String nazwisko;
private int wiek;
public Uzytkownik (String imie,String nazwisko,int wiek)
{
this.imie = imie;
this.nazwisko = nazwisko;
this.wiek = wiek;
}
//--------------------------------------------------------------------//
public void setImie(String a)
{
this.imie = a;
}
public String getImie()
{
return imie;
}
//--------------------------------------------------------------------//
public void setNazwisko(String a)
{
this.nazwisko = a;
}
public String getNazwisko()
{
return nazwisko;
}
//--------------------------------------------------------------------//
public void setWiek(int a)
{
this.wiek = a;
}
public int getWiek()
{
return wiek;
}
//--------------------------------------------------------------------//
}
Klasa GlownaRamka
public class GlownaRamka extends JFrame {
private JPanel contentPane;
private ArrayList<Uzytkownik> uzytkownicyLista = new ArrayList<Uzytkownik>();;
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
GlownaRamka frame = new GlownaRamka();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
public GlownaRamka() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 450, 300);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
JButton dodanieUzytkownika = new JButton("dodanieUzytkownikaIotwarcieOknaDialogowego");
dodanieUzytkownika.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0)
{
OknaDialogowe okno1 = new OknaDialogowe();
okno1.setDefaultCloseOperation(JDialog.DISPOSE_ON_CLOSE);
okno1.setVisible(true);
Uzytkownik a = new Uzytkownik("Marcin","Gortat",28);
uzytkownicyLista.add(a);
}
});
GroupLayout gl_contentPane = new GroupLayout(contentPane);
gl_contentPane.setHorizontalGroup(
gl_contentPane.createParallelGroup(Alignment.TRAILING)
.addGroup(gl_contentPane.createSequentialGroup()
.addContainerGap(129, Short.MAX_VALUE)
.addComponent(dodanieUzytkownika, GroupLayout.PREFERRED_SIZE, 176, GroupLayout.PREFERRED_SIZE)
.addGap(119))
);
gl_contentPane.setVerticalGroup(
gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addGap(72)
.addComponent(dodanieUzytkownika, GroupLayout.PREFERRED_SIZE, 73, GroupLayout.PREFERRED_SIZE)
.addContainerGap(106, Short.MAX_VALUE))
);
contentPane.setLayout(gl_contentPane);
}
}
Klasa OknaDialogowe
public class OknaDialogowe extends JDialog {
private final JPanel contentPanel = new JPanel();
private JPanel buttonPane;
private JTextArea textArea;
/**
* Launch the application.
*/
public static void main(String[] args) {
}
/**
* Create the dialog.
*/
public OknaDialogowe() {
setBounds(100, 100, 450, 300);
contentPanel.setBorder(new EmptyBorder(5, 5, 5, 5));
{
textArea = new JTextArea();
}
{
buttonPane = new JPanel();
buttonPane.setLayout(new FlowLayout(FlowLayout.RIGHT));
{
JButton okButton = new JButton("OK");
okButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e)
{
//**********************************************************************************************
//-------Tu chce sie odwolac do listy uzytkownicyLista, ktora przechowuje uzytkownikow
//-------Tak zeby w textArea pojawilo sie imie i nazwisko uzytkownika
//**********************************************************************************************
}
});
okButton.setActionCommand("OK");
buttonPane.add(okButton);
getRootPane().setDefaultButton(okButton);
}
{
JButton cancelButton = new JButton("Cancel");
cancelButton.setActionCommand("Cancel");
buttonPane.add(cancelButton);
}
}
GroupLayout groupLayout = new GroupLayout(getContentPane());
groupLayout.setHorizontalGroup(
groupLayout.createParallelGroup(Alignment.LEADING)
.addComponent(contentPanel, GroupLayout.PREFERRED_SIZE, 434, GroupLayout.PREFERRED_SIZE)
.addComponent(buttonPane, GroupLayout.PREFERRED_SIZE, 434, GroupLayout.PREFERRED_SIZE)
);
groupLayout.setVerticalGroup(
groupLayout.createParallelGroup(Alignment.LEADING)
.addGroup(groupLayout.createSequentialGroup()
.addComponent(contentPanel, GroupLayout.PREFERRED_SIZE, 228, GroupLayout.PREFERRED_SIZE)
.addComponent(buttonPane, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
);
GroupLayout gl_contentPanel = new GroupLayout(contentPanel);
gl_contentPanel.setHorizontalGroup(
gl_contentPanel.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPanel.createSequentialGroup()
.addGap(32)
.addComponent(textArea, GroupLayout.PREFERRED_SIZE, 182, GroupLayout.PREFERRED_SIZE)
.addContainerGap(210, Short.MAX_VALUE))
);
gl_contentPanel.setVerticalGroup(
gl_contentPanel.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPanel.createSequentialGroup()
.addGap(5)
.addComponent(textArea, GroupLayout.PREFERRED_SIZE, 182, GroupLayout.PREFERRED_SIZE)
.addContainerGap(31, Short.MAX_VALUE))
);
contentPanel.setLayout(gl_contentPanel);
getContentPane().setLayout(groupLayout);
}
}