Dynamische Baumanzeige

JavaFX und die Programmierung

Moderator: wegus

Antworten
Tiefflieger
Beiträge: 8
Registriert: 24.04.2010, 19:51

Dynamische Baumanzeige

Beitrag von Tiefflieger » 01.05.2010, 13:23

Als eine meiner ersten Spielereien mit JavaFX versuche ich, einen Baum dynamisch (d.h. man soll Knoten hinzufügen können und diese sollen auch der Anzeige hinzugefügt werden) anzuzeigen.

Ein einfaches Projekt zu meiner Frage liegt diesem Posting bei.
Es besteht hauptsächlich aus
  • TreeNode - Eine einfache Java-Klasse, die einen Knoten in einem Baum repräsentiert. Vergrößert man die Tiefe des Baumes, wird automatisch die Eigenschaft "countNodes" hochgezählt.
  • AdapterNode - Eine JavaFX-Klasse, die als Bindeglied zwischen TreeNode und FXNode dient.
  • FXNode - Eine JavaFX-Klasse, die einen TreeNode anzeigt, inklusive eines Buttons, mit dem die Tiefe des TreeNode vergrößert werden kann.
  • Main - Main-Klasse
Durch Drücken des Buttons von FXNode wird die Methode increaseDepth des AdapterNodes aufgerufen, der den Aufruf weiter an TreeNode sendet. TreeNode wiederum erhöht die Tiefe des Baums. Danach wird die Eigenschaft countNodes von TreeNode aktualisiert, die Observer-Klasse AdapterNode wird benachrichtigt, deren Eigenschaft "countNodes" ist wiederum an den Textinhalt von FXNode gebunden.

Gibt es soweit irgendwelche Verbesserungsvorschläge?

Nun möchte ich die Anzeige nach dem Erhöhen der Baumtiefe aktualisieren, sodaß immer alle Knoten des Baums angezeigt werden (statt nur der Wurzel).

Meine Idee ist, die VBox von FXNode um eine Spalte zu vergrößern. Diese neue Spalte könnte eine HBox enthalten, die ihrerseits aus mehreren nebeneinander angeordneten FXNodes für die Kinder besteht. Diese Kind-FXNodes können dann wieder selber mehrere KindesKinder-FXNodes haben usw.

Ich steh auf dem Schlauch, wie könnte ich das umsetzen? Wie kann ich die Anzeige beim Tiefeerhöhen aktualisieren? Oder wäre es ganz anders geschickter zu lösen?

Bin für jeden Tip dankbar :-)
Dateianhänge
JavaFXPlayGround.tgz
NetBeans-Projekt zu meiner Frage
(7.05 KiB) 374-mal heruntergeladen
Heute code ich, morgen debug ich, und übermorgen cast ich die Königin auf int

Benutzeravatar
arittner
Beiträge: 3229
Registriert: 05.08.2008, 07:20
Wohnort: Südniedersachsen
Kontaktdaten:

Re: Dynamische Baumanzeige

Beitrag von arittner » 01.05.2010, 14:02

Moin!

Ich kann mir das gerne mal anschauen, ist Dir allerdings bekannt, dass JavaFX 1.3 eine Tree-Komponente hat (unter den experimentellen Controls).

Beste Grüße,
Josch.
JNBB/BeanDev-Blog | Twitter@beandev
Bild
Sun Certified Specialist for NetBeans IDE

Tiefflieger
Beiträge: 8
Registriert: 24.04.2010, 19:51

Re: Dynamische Baumanzeige

Beitrag von Tiefflieger » 01.05.2010, 14:31

Nein das war mir nicht bewußt, danke für den Tip, ich schaus mir mal an :-)

Du meintest das hier, oder?
Heute code ich, morgen debug ich, und übermorgen cast ich die Königin auf int

Benutzeravatar
arittner
Beiträge: 3229
Registriert: 05.08.2008, 07:20
Wohnort: Südniedersachsen
Kontaktdaten:

Re: Dynamische Baumanzeige

Beitrag von arittner » 01.05.2010, 16:57

Moin!

Jepp.

Beste Grüße,
Josch.
JNBB/BeanDev-Blog | Twitter@beandev
Bild
Sun Certified Specialist for NetBeans IDE

Antworten