![]() |
|
|
|||||||
| AWT, Swing & SWT Themen zur Programmierung von Benutzer-Oberflächen (GUI) sowie zur Grafikprogrammierung (2D / 3D) |
|
|
|
Themen-Optionen | Thema durchsuchen | Ansicht |
| #1 (permalink) | |
|
Inkognito
Beiträge: n/a
|
Innerhalb einer Anwendung soll Fenster A auf Komponenten von Fenster B zugreifen können, um z.B. Werte in einer TextBox zu ändern.
Dies erreiche ich im Moment dadurch, dass ich in der Klasse zu Fenster A ein private Attribut hinterlege, das einen Verweis auf Fenster B enthält. Sollen nun alle Fenster auf alle anderen zugreifen können wird das ganze unschön. Eigentlich möchte ich mit Fenster A auf Fenster B zugreifen können, wie man es z.B. aus VB kennt, in der Art: FensterB.TextBox1.setText(); meinetwegen noch mit App.FensterB.Textbox1.setText(); Gibt es da eine gängige Lösung, wie das gelöst wird in Java? Ich freue mich sehr über Hilfe und Tips. Vielen Dank, Tom |
| #2 (permalink) | |
|
Benutzer
Byte
Registriert seit: 09.10.2007
Beiträge: 68
Abgegebene Danke: 0
Erhielt 0 Danke für 0 Beiträge
|
Hallo Tom,
Du kannst Dir natürlich eine Klasse App programmieren. Darin deklarierst Du die private static Variablen z.B.: private static FensterB fensterB = null; Im Konstruktor von FensterB setzte Du App.fensterB = this; Wenn Dein JTextField im FensterB public ist, kannst direkt darauf zugreifen. Wenn nicht schreibe im FensterB eine getter-Methode: public JTextField getJTextField1() { return this.jTextField1; } Dieses Verfahren ist nicht sehr elegant, aber es hilft Dir erstmal weiter. Du musste Dir aber selbst noch folgende Frage beantworten. Was passiert wenn es das FensterB nicht gibt ? (NullPointerException) Könnten es mehrere Instancen vom FenserB geben? Bernd
__________________
"Programmierer werden bald arbeitslos! Mit Excel kann man alles machen." |
|
|
| #3 (permalink) | |
|
Stammbenutzer
CD-R 80
Registriert seit: 07.01.2007
Beiträge: 9.360
Abgegebene Danke: 0
Erhielt 291 Danke für 282 Beiträge
|
Das mit den statischen Variablen ist nicht so toll. Wenn "jedes fenster auf jedes" zugreifen können soll, dann müssen sie sich entweder direkt kennen, oder über interfaces, oder über eine gemeinsame, übergeordnete instanz (die dann aber KEINE statischen fields enthalten sollte - stattdessen sollte, wenn überhaupt, dann diese Übergeordnete instanz bei allen Fenstern bekannt sein). Wenn jedes Fenster jedes andere kennen muss, drängt sich zwar die Frage auf, ob da das Klassendesign nicht vielleicht suboptimal ist, aber das musst du entscheiden....
|
|
|
|
| Lesezeichen |
Latex Maths & Physics Editor ...
|
| Themen-Optionen | Thema durchsuchen |
| Ansicht | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Innerhalb von Runnable auf super. zugreifen? | Java Basics - Anfänger-Themen | 3 | 28.07.2008 15:16 | |
| Auf Objekte innerhalb eines Panels zugreifen | TheSchüler | Java Basics - Anfänger-Themen | 9 | 13.02.2007 22:06 |
| Auf File / Verzeichnis innerhalb eines jars zugreifen | Java Basics - Anfänger-Themen | 2 | 23.03.2006 19:44 | |
| [Struts] Innerhalb Action auf form zugreifen | clemson | Allgemeines EE | 4 | 06.09.2005 09:38 |
| Verzeichnis auflisten - auch innerhalb eines Jars | Andy77 | Allgemeine Java-Themen | 6 | 19.07.2005 13:57 |