Auswahl m aus n in Java per JTable

vorhergehende Artikel in: Java Komponenten
08.05.2014

Beim Programmieren hat man öfter mal den Fall, daß der Anwender aus einer zur Verfügung gestellten Grundgesamtheit eine Untermenge auswählen soll. Hier einige Klassen, die dabei helfen könnten:

Um die geschilderte Aufgabe einfacher zu machen, schuf ich eine generische Klasse ActivityToggle, die lediglich einen Container für das eigentliche Objekt darstellt (das auch den Template-Parameter bildet) und dazu noch eine les- und schreibbare boolean Property namens active hat. Bei Ändern dieser Property wird ein PropertyChangeEvent gesendet. Die Identität von Objekten dieser Klasse wird durch eigentliche Objekt vorgegeben: equals- und hashCode-Methode werden an dieses delegiert. Daher ist es nicht erlaubt, eine null-Referenz als Objekt zu setzen.

Dazu entwickelte ich ein TableModel, das ebenfalls eine generische Klasse darstellt. Man kann neue Objekte - deren Typ dem Template-Parameter entspricht - hinzufügen und bereits enthaltene Objekte entfernen. Sind dies keine ActivityToggles, werden sie mit einem solchen umhüllt. Das Model stellt einige spezielle Methoden zur Verfügung - so zum Beispiel eine, die eine Collection der Objekte liefert, deren active-Property aktuell den Wert true aufweist.

Diese Technik wurde zum Beispiel in der sQLshell benutzt, um die Generatoren für das Hinzufügen oder Modifizieren von Tabelleninhalten auszuwählen. Daher stammt auch der folgende Screenshot, der den angepassten ActivityToggleRenderer demonstriert, der den Status des jeweiligen Objektes durch die Darstellung des Namens reflektiert: Screenshot Der Dialog zur Bestimmung, welche Generatoren zur Erzeugung der Inhalte herangezogen werden sollen

Lizenz
ActivityToggle
ActivityToggleModel
ActivityToggleRenderer
EventHandlingSupport
PropertyChangeSender

Artikel, die hierher verlinken

Auswahl m aus n in Java per JTree

10.05.2014

Aufbauend auf der Arbeit, über die ich in einem der früheren Artikel berichtete, habe ich das dort beschriebene Konzept erweitert und auf einen Baum angewendet

Alle Artikel rss Wochenübersicht Monatsübersicht Codeberg Repositories Mastodon Über mich home xmpp


Vor 5 Jahren hier im Blog

  • Styles für GeoJSON in EBMap4D

    22.08.2021

    Ich habe bereits darüber berichtet, dass EBMap4D jetzt über die Möglichkeit verfügt, beliebige GeoJSON-Layer darzustellen. Nun ist die Anwendung um die Möglichkeit erweitert worden, in diesen GeoJSON-Daten enthaltene Stilinformationen für die Darstellung zu nutzen.

    Weiterlesen

Neueste Artikel

  • Linux-System SBOM visualisiert als Graph - für YUM!

    Ich schrieb vor einiger Zeit über die Visualisierung und Analyse von Abhängigkeiten in Linux-Distributionen, die auf Debian aufbauen. Damals habe ich noch behauptet, dass andere Distributionen, die zum Beispiel auf yum als Paketmanagement-Lösung setzen nur schwer in dieser Art und Weise analysierbar sind. Ich habe weiter recherchiert und nun auch dafür eine Lösung gefunden.

    Weiterlesen
  • 35 Jahre Antipatterns in Datenmodellen

    Ich habe inzwischen 35 Jahre Softwareentwicklung auf dem Buckel - viele davon für Geld...

    Weiterlesen
  • Highlights der DefCon 34

    Hier meine Highlights der DefCon 34 in Las Vegas

    Weiterlesen

Manche nennen es Blog, manche Web-Seite - ich schreibe hier hin und wieder über meine Erlebnisse, Rückschläge und Erleuchtungen bei meinen Hobbies.

Wer daran teilhaben und eventuell sogar davon profitieren möchte, muss damit leben, daß ich hin und wieder kleine Ausflüge in Bereiche mache, die nichts mit IT, Administration oder Softwareentwicklung zu tun haben.

Ich wünsche allen Lesern viel Spaß und hin und wieder einen kleinen AHA!-Effekt...

PS: Meine öffentlichen Codeberg-Repositories findet man hier.