Zuweisung Swing-JTextfield zu Controller
lima-city → Forum → Programmiersprachen → Java
architektur
array
beispiel
code
dokument
element
form
helfen
instanz
jemand
knopf
kommando
modeln
moment
post
problem
speichern
string
url
verwenden
-
Hallo!
Ich stehe vor einem Problem welches ich durch hässliche String-IDs vorübergehend gelöst habe.
Ich habe in meinem View-Package (MVC-Architektur) JTextfields, Checkboxes, etc. Nun muss ich die Werte ja irgendwie zuweisen. Im Moment habe ich eine Methode welche einen String-Key und ein String-Value entgegennimmt und dann mit .equals(); prüft worum es sich handelt und die Daten entsprechend ans Model weiterleitet bzw. die Werte im Model setzt.
Gibts da nicht was schöneres? Ich mein bei JButtons gibts .setActionCommand(String command); welches mir ein Kommando setzt, auf das ich prüfen kann. Bei PHP gibts im HTML-Form name="" wo ich den Namen nacher als Key des GET- bzw. POST-Array verwenden kann, aber bei Java find ich einfach nichts. Wär nett, wenn mir da jemand helfen könnte.
Beitrag zuletzt geändert: 30.4.2012 9:52:06 von schrotti12 -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
schrotti12 schrieb:
Es gibt noch was ähnliches wie eine ID in HTML....
Gibts da nicht was schöneres? Ich mein bei JButtons gibts .setActionCommand(String command); welches mir ein Kommando setzt, auf das ich prüfen kann. Bei PHP gibts im HTML-Form name="" wo ich den Namen nacher als Key des GET- bzw. POST-Array verwenden kann, aber bei Java find ich einfach nichts. Wär nett, wenn mir da jemand helfen könnte.
Dazu musst du von jedem Element eine Instanz irgendwo speichern...JButton knopf = den Knopf initialisieren + ActionListener; public void actionPerformed(ActionEvent event) { if(event.getSource() == knopf) { // Das Event kommt von meinem Knopf } }
Bei
bekommst du immer eine Instanz von dem Element das das Event ausgelöst hat.event.getSource()
Das funktioniert nicht nur wie im Beispiel mit einem ActionListener sondern auch bei deinem Textfeld. -
Okay, danke. Das werd ich mal ausprobieren!
Weil Strings-Parsen benötigt einfach viel zu viel Rechenzeit. Nicht dass das ein Problem wäre, aber wenn sichs vermeiden lässt...
Wobei es das bei Document-Listener ja nicht gibt. Und ich brauchs dort um die passenden Werte ins Model einzutragen...
Beitrag zuletzt geändert: 30.4.2012 10:52:55 von schrotti12 -
schrotti12 schrieb:
Bei einem DocumentListener gibt es das auch, aber unter einem anderen Namen:
Wobei es das bei Document-Listener ja nicht gibt. Und ich brauchs dort um die passenden Werte ins Model einzutragen...Document document1 = initialize + DocumentListener; Document document2 = initialize + DocumentListener; public void irgendeinUpdate(DocumentEvent event) { Document doc = event.getDocument(); // Dieses Dokument hat das Event ausgelöst // Restliche Vorgehensweise genau gleich: if(doc == document1) { // Dokument 1 } else if(doc == document2) { // Dokument 2 } }
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage