G
gast
Gast
Hallo,
ich moechte ueber einen Button in meinem JFrame einen Dialog aufrufen. Diesem Dialog wollte ich die Referenzen meiner Controls (die sich im JFrame befinden) im Konstruktor uebergeben. Vom Dialog aus wollte ich dann z. B. die Checkbox des JFrames aktivieren.
Ich wollte das eigendlich so machen, wie unten im Beispielcode beschrieben. Das Problem ist aber, wenn man beispielsweise 25 Controls uebergeben wollen wuerde. Das waere ja mal ein maechtig langer Konstruktor...
Wie wuerdet Ihr das machen?
Beispiel von mir:
Achso. Bitte nicht wundern: Dieses Programm ist natuerlich absolut sinnfrei. Es soll nur die Idee verdeutlichen.
Danke im vorraus
Simon
ich moechte ueber einen Button in meinem JFrame einen Dialog aufrufen. Diesem Dialog wollte ich die Referenzen meiner Controls (die sich im JFrame befinden) im Konstruktor uebergeben. Vom Dialog aus wollte ich dann z. B. die Checkbox des JFrames aktivieren.
Ich wollte das eigendlich so machen, wie unten im Beispielcode beschrieben. Das Problem ist aber, wenn man beispielsweise 25 Controls uebergeben wollen wuerde. Das waere ja mal ein maechtig langer Konstruktor...
Wie wuerdet Ihr das machen?
Beispiel von mir:
Code:
public class MyFrame extends javax.swing.JFrame {
public MyFrame() {
}
...
private void jButtonOpenDialog(java.awt.event.ActionEvent evt)
{
// Dialog aufrufen und dabei die beiden Checkboxes des JFrames uebergeben
AboutDialog about = new AboutDialog(null, true, jCheckbox1, jCheckbox2);
about.setSize(329, 180);
about.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
about.setVisible(true);
}
}
// die Klasse AboutDialog ------------------------------------------
public class AboutDialog extends java.awt.Dialog {
private JCheckBox jCheckbox1;
private JCheckBox jCheckbox2;
public AboutDialog(java.awt.Frame parent, boolean modal, JCheckBox jCheckbox1, JCheckBox jCheckbox2) {
super(parent, modal);
this.jCheckbox1 = jCheckbox1;
this.jCheckbox2 = jCheckbox2;
enableCheckboxes();
}
private void enableCheckboxes()
{
jCheckbox1.setEnabled(true);
jCheckbox2.setEnabled(true);
}
}
Achso. Bitte nicht wundern: Dieses Programm ist natuerlich absolut sinnfrei. Es soll nur die Idee verdeutlichen.
Danke im vorraus
Simon