G
Guest
Gast
Hallo,
ich programmiere jetzt schon einige Zeit in Java aber bei folgendem Problem weiß ich bis heute nicht, ob das so wie ich das mache, ein guter Programmierstil ist.
Angenommen man hat eine GUI mit verschiedenen Komponenten drauf. Daneben hat man mehrere andere Klassen, die ab und zu auf GUI-Elemente zugreifen müssen (beispielsweise um die Anzahl der Spalten einer JTable zu erfahren).
Doch wie sollen die anderen Klassen am besten auf GUI Elemente zugreifen?
Mit getter und setter Methoden und zuvor den anderen Klassen das GUI Objekt im Konstruktor übergeben? Oder gibts andere Möglichkeiten?
Hier mal ein simples Beispiel:
Einer anderen Klasse hab gebe ich das GUI Objekt im Konstruktor und nutze dann die setter und getter Methoden. Aber ist das so richtig bzw. guter Programmierstil?
ich programmiere jetzt schon einige Zeit in Java aber bei folgendem Problem weiß ich bis heute nicht, ob das so wie ich das mache, ein guter Programmierstil ist.
Angenommen man hat eine GUI mit verschiedenen Komponenten drauf. Daneben hat man mehrere andere Klassen, die ab und zu auf GUI-Elemente zugreifen müssen (beispielsweise um die Anzahl der Spalten einer JTable zu erfahren).
Doch wie sollen die anderen Klassen am besten auf GUI Elemente zugreifen?
Mit getter und setter Methoden und zuvor den anderen Klassen das GUI Objekt im Konstruktor übergeben? Oder gibts andere Möglichkeiten?
Hier mal ein simples Beispiel:
Code:
public class TestGUI extends JFrame{
JTable table;
DefaultTableModel model;
JScrollPane scroll;
public PacketMonitor(){
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// init gui
String[] titles = new String[]{ "A", "B", "C"};
model = new DefaultTableModel( titles, 0 );
table = new JTable( model );
scroll = new JScrollPane(table);
scroll.setAutoscrolls(true);
this.getContentPane().setLayout(new BorderLayout());
this.add(scroll,BorderLayout.CENTER);
this.pack();
this.setSize(800, 600);
this.setVisible(true);
}
public static void main(String[] args) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
TestGUI gui = new TestGUI ();
}
});
}
public DefaultTableModel getModel() {
return model;
}
public void setModel(DefaultTableModel model) {
this.model = model;
}
public JTable getTable() {
return table;
}
public void setTable(JTable table) {
this.table = table;
}
public JScrollPane getScroll() {
return scroll;
}
public void setScroll(JScrollPane scroll) {
this.scroll = scroll;
}
}
Einer anderen Klasse hab gebe ich das GUI Objekt im Konstruktor und nutze dann die setter und getter Methoden. Aber ist das so richtig bzw. guter Programmierstil?