Guten Morgen,
ich habe einen "Einstellungsdialog" gebastelt, welcher wie folgt aufgebaut ist:
Ein JDialog, welcher als Hauptfenster dient und im unteren Bereich 3 Buttons "Uebernehmen", "Zuruecksetzen" und "Schliessen" hat. Auf diesem JDialog ist eine JTabbedPane, welche 3 JPanels mit verschiedenen Einstellmoeglichkeiten hat. Die 3 oben genannten Button sind immer sichtbar - egal auf welchem JPanel auf der JTabbedPane man sich gerade befindet.
Nun mein Problem: ich wuerde gerne realisieren, dass der "Uebernehmen" Button nur aktiv ist, wenn sich etwas in einem Element der JPanels geaendert hat. Die Events von den Elementen innerhalb der JPanels zu bekommen ist nicht das Problem - aber wie reiche ich die an den uebergeordneten JDialog weiter?
Als erstes fiel mir dazu die Observer/Observable Geschichte ein. Die faellt aber wegen der Mehrfachvererbung raus. Die zweite Idee waere, die JButtons mit an die JPanels zu uebergeben und dort dann entsprechend zu aktivieren/deaktivieren. Aber irgendwie gefaellt mir diese Methode nicht.
Hat jemand eine Idee, wie ich das elegant loesen koennte?
Danke!
Gruss, FFNB.
ich habe einen "Einstellungsdialog" gebastelt, welcher wie folgt aufgebaut ist:
Ein JDialog, welcher als Hauptfenster dient und im unteren Bereich 3 Buttons "Uebernehmen", "Zuruecksetzen" und "Schliessen" hat. Auf diesem JDialog ist eine JTabbedPane, welche 3 JPanels mit verschiedenen Einstellmoeglichkeiten hat. Die 3 oben genannten Button sind immer sichtbar - egal auf welchem JPanel auf der JTabbedPane man sich gerade befindet.
Nun mein Problem: ich wuerde gerne realisieren, dass der "Uebernehmen" Button nur aktiv ist, wenn sich etwas in einem Element der JPanels geaendert hat. Die Events von den Elementen innerhalb der JPanels zu bekommen ist nicht das Problem - aber wie reiche ich die an den uebergeordneten JDialog weiter?
Als erstes fiel mir dazu die Observer/Observable Geschichte ein. Die faellt aber wegen der Mehrfachvererbung raus. Die zweite Idee waere, die JButtons mit an die JPanels zu uebergeben und dort dann entsprechend zu aktivieren/deaktivieren. Aber irgendwie gefaellt mir diese Methode nicht.
Hat jemand eine Idee, wie ich das elegant loesen koennte?
Danke!
Gruss, FFNB.