carookee - group communication for you
Home / JavaForum / Beginner
Infos   |   Features   |   Gold-Edition   |   Kundenservice   
java
  Übersicht
  Forum
Beginner
Java allgemein
JDBC
JNI
Networking
Online-Ressourcen
Swing + AWT
XML
Meckerecke
  Mitglieder
LOGIN





· Passwort vergessen
· Kostenlos anmelden
  Information
  Demo
  Features
  Im Vergleich
  Anmeldung
SUCHE
Beiträge, Foren oder Verfasser finden:
  Kundenservice
  Impressum
  Datenschutz
  AGB
Status
4.982 User online
1 User eingeloggt
 

Beiträge
   Antworten     Neuer Beitrag    

Beitrag 511 von 2963 (17%) |<   <   >   >|

Autor exi
Datum 15.12.05, 19:43
Betreff Re: Ereignisbehandlung bei JCheckBox


Hallo Andi,

--- Ich habe in meinem Java Programm eine Tabelle mit 15 Colums. Nun will ich anhand von ca. 10 JCheckBoxen die Tabelle neu aufbauen, also nur die Spalten anzeigen die der Benutzer anhand der JCheckBoxen auswählt.


... 10 Checkboxen für 15 Spalten?
Und wie sollen die Checkboxen integriert sein? Als Einträge in der Tabelle (eine Zeile), in einem eigenen Panel neben der Tabelle, als PopupMenu, als Einträge im Dialogmenu?
Das kann alles Einfluß auf den Codeablauf haben.
Und soll die Tabelle aktualisiert werden wenn eine Checkbox angeklickt wurde - oder erst wenn alle selektiert sind (oder auch nicht)?




--- Wie mache ich am besten die Ereignisbehandlung der Checkboxen... Wie prüfe ich, wieviele CheckBoxen selektiert sind und wie soll ich das ergebnis am besten übergeben?


... jede Checkbox merkt selbst wenn sie ihr Häkchen bekommt oder verliert. Wenn du ihr einen ActionListener zugewiesen hast, dann führt sie automatisch alles aus was in der Methode ActionPerformed(ActionEvent e) befohlen wird.
In ActionPerformed kannst du auf jeden Fall den Status ermitteln: boolean checknoxName.isSelected() und abhängig davon weitere Aktionen anstoßen.
Wenn die Checkboxen im Dialogmenu deines Hauptprgrammes liegen, dann kannst du i.d.R. auf alle zugreifen und den Gesamtstatus abfragen. Aus der Gesamtinformation die Teiltabelle ermitteln und deren Anzeige anweisen.
Wenn die Checkboxen eine Zeile deiner Tabelle bilden, dann empfehle ich einen eigenen Event zu gestalten und diesen von der Tabelle oder den Checkboxen an das Hauptprogramm zu senden. Da Hauptprogramm hat in der Regel zugriff auf alle Zellen in der Tabelle, also kannst du direkt abfragen und hast alle Statusinformationen.
Du kannst dir aber auch ein Panel mit den 10 Checkboxen und einem normalen Knopf 'aktualisieren' basteln. Dann brauchen die Checkboxen kein actionPerformed(). Es genügt wenn du den Knopf 'aktualisieren' mit der Methode versorgst. 'aktualisieren' kann dann den Status aller Checkboxen abfragen und anhand dessen einen Event werfen der die Information zum Hauptprgramm bringt.
Falls dir die Events noch zu undurchschaubar sind (sind halt Gewöhnungsbedürftig) kannst du auch dein Hauptprogramm als Variable an das Panel (oder die entsprechend erweiterte Tabelle, bzw. die entsprechend erweiterten Checkboxen, oder einen Dialog) übergeben und im Aktionsfall die entsprechende öffentliche Methode ansprechen.

tschüs
exi


Diskussionsverlauf:
Ereignisbehandlung bei JCheckBox
    Re: Ereignisbehandlung bei JCheckBox
    Re: Ereignisbehandlung bei JCheckBox o.T.

 Auf diesen Beitrag antworten
 Neuen Beitrag verfassen


|<   <   >   >|

                                                                                                                                                                                                                           

Impressum  · Datenschutz  · AGB  · Infos  · Presse
Ein modernes Forum: teamturn.com