M
muffi
Gast
hallo,
angenommen ich habe zwei klassen, eine Gui.java und eine Logic.java. die beiden klassen sind für ein gui fenster und dessen aktionen verantwortlich.
Gui.java offnet ein fenster mit textfeldern und buttons. die buttons haben addActionListener()-Methoden.
Logic.java implements ActionListener. die actionPerformed()-Methode ist
meine frage nun: wie kann ich z.b. nach drücken des save-buttons auf die textfelder der klasse Gui.java zugreifen, um sie z.b. in ne datenbank zu speichern? geht das überhaupt aus der klasse logic.java?
durch getSource() bekommt man ja nur den ereignisauslöser, aber nicht das gui-objekt. ????
wenn ich gui+logic in einer klasse habe, kann ich ja einfach die felder als instanzvariablen definieren und dann z.b. durch this.textField.getText() o.ä. darauf zugreifen. aber wie macht man das bei der trennung?
hinweis1: ich möchte aber bei der trennung auf zwei klassen (gui + logic) bleiben und keine weitere kapselung durch z.b. ne dritte klasse vornehmen.
hinweis2: meine main-methode sieht so aus:
vielen dank für hilfreiche antworten.
angenommen ich habe zwei klassen, eine Gui.java und eine Logic.java. die beiden klassen sind für ein gui fenster und dessen aktionen verantwortlich.
Gui.java offnet ein fenster mit textfeldern und buttons. die buttons haben addActionListener()-Methoden.
Logic.java implements ActionListener. die actionPerformed()-Methode ist
Code:
public void actionPerformed(ActionEvent event) {
String command = event.getActionCommand();
if (command.equals("Save")) {
// hier möchte ich inhalte der textfelder aus Gui.java speichern
}
meine frage nun: wie kann ich z.b. nach drücken des save-buttons auf die textfelder der klasse Gui.java zugreifen, um sie z.b. in ne datenbank zu speichern? geht das überhaupt aus der klasse logic.java?
durch getSource() bekommt man ja nur den ereignisauslöser, aber nicht das gui-objekt. ????
wenn ich gui+logic in einer klasse habe, kann ich ja einfach die felder als instanzvariablen definieren und dann z.b. durch this.textField.getText() o.ä. darauf zugreifen. aber wie macht man das bei der trennung?
hinweis1: ich möchte aber bei der trennung auf zwei klassen (gui + logic) bleiben und keine weitere kapselung durch z.b. ne dritte klasse vornehmen.
hinweis2: meine main-methode sieht so aus:
Code:
Logic n = new Logic();
Gui x = new Gui(n);
x.setVisible(true);
vielen dank für hilfreiche antworten.