treeviewer aus tabelle

  • Themenstarter Themenstarter Guest
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
G

Guest

Gast
hallo,

ich habe eine Arraylist mit objekten einer anderen klasse. In dieser klasse befinden sich string und booleanwerte.
Nun möchte ich gern einen baum der die einzelnen einträge dieser arralist darstellt. Also jetzt mal ein bsp

Code:
Arraylist(tabelle)

Telefon              Lastschrift                            Deutschland                     true                  12345
Telefon              Lastschrift                            Deutschland                     false                 13456 
Telefon              rechnung                             Schweiz                           false                  9834 
Internet             Lastschrift                            Schweden                        true                  76358
...

in meinem Baum soll das dann so aussehen
-telefon
   -Lastschrift
       -Deutschland
          -ja             
          -nein             
   -rechnung
       +Schweiz 
-Internet
   +Lastschrift
...

Ich wollte das mit einem treeviewer machen . Ich weiß das ich dazu einen content un labelprovieder überschreiben muss. Und auch welche Methoden ich davon überschreiben muss bzw was sie bedeuten. Was ich aber nicht weiß ist wie ich sie überschreibe.

in den bsp. bzw. Tutorials die ich gefunden habe. Besteht ein baum immer aus xml, dokumenten, Dateisystemen oder Objekten die eine referenz auf ihre childrens bzw. parents haben. Dies ist bei mir aber leider nicht der fall. wie muss ich also den content und labelprovider überschreiben.
Kann mir einer von euch sagen wie ich das machen soll bzw ein bsp nennen wo man das nachvollziehn kann ?
 
Hallo,
das bsp hatte ich mir auch schon angeguckt , ist aber auch einfach ein fileviewer wo ja auch nur auf die methoden von file zurückgegriffen wird also set parentfile setlistfiles und so weiter ich brauche je etwas wo ich die methoden überschreibe und die einzelnen elemente nicht objekte einer bestimmten klassemt referenzen auf parent oder children haben
 
Du solltest Dir erstmal eine vernünftige Objektstruktur bauen. Die Werte einfach so in eine Liste zu schmeissen, ist nicht sonderlich sinnig. Darüber hinaus verstehe ich aber eh nicht, wo genau Dein Problem liegt. Formulier mal genauer, was Du nicht verstehst und benutze dabei bitte Satzzeichen.
 
Hallo

Also ich möchte ein baum darstellen. Für diesen Baum stelle ich eine Anfrage an eine Schnittstelle und erhalte zurück ein Objekt bestehend aus einer Arraylist und einem Fehlercode.
Die Arraylist enthält Einträge einer klasse Auftragsübersicht. Die Klasse Arrayübersicht besteht u.a. aus Auftragsart, Bezahlart, Lieferland, id, neukunde u.s.w.
Diese Variablen sind teilweise Objekte wie z.b. Auftrags- und Bezahlart. und halt teilweise Strings wie Land oder auch Booleans wie neukunde.
Diese Objekten sind im grunde nur DatenContainer die aus name , Id, Beschreibung bestehen.
Zum testen habe ich aber auch aus den objekten erstmal Strings gemacht, welche ich später durch die objekte erseten möchte.
Jetzt möchte ich halt einen Baum wie am anfang de threads dargestllt. Dieser bekommt von mir die Arraylist und soll dann als root alle enthaltenen Auftragsarten anzeigen und wenn ich auf das + davorklicke aufgehen, alle zugehörigen bezahlarten , danach alle zugeordneten Lieferländer und danach gruppiert ob neukunde oder nicht(also ja bzw nein).

Ich weiß das ich dafür einen content und labelprovider brauche und ich weiß auch welche methden ich überschreiben muss. nur leider eben nicht wie.

Also wie weiß der contentviewer was seine kind und parentobjekte sind da die ja keine referenz aufeinander haben sondern nur als einträge in der arraylist stehen.

ich hoffe das war jetzt einigermaßen verständlich.
 
Anonymous hat gesagt.:
Also wie weiß der contentviewer was seine kind und parentobjekte sind da die ja keine referenz aufeinander haben sondern nur als einträge in der arraylist stehen.

Tja, das weiss er halt, indem Du die Methoden von ContentProvider geeignet überschreibst. Die Methode getChildren() liefert z.b. die Kinder eines Elements. Du musst in der Methode ein Object[] Array zusammenbauen mit allen Kindern des spezifischen Elements. Deshalb sagte ich auch, dass Du eine vernünftige Objektstruktur brauchst und nicht einfach irgendwelche flachen Strings in einer Liste.
Wenn Du keine Referenzen auf Kindobjekte hast und diese auch nicht irgendwie besorgen kannst, dann kannst Du das ganze auch nicht hierarchisch als Baum darstellen. Wie auch? Dann gibts offenbar keine hierarchischen Zusammenhänge.
 
Es soll ja auch keine hierarchie darstellen sondern mehr so wie eine gruppierebene.

Also wenn ich auf die Auftragsart klicke sollen alle aufträge mit dieser art gemeint wenn ich eine ebene tiefer also z.b rechnung klicke sind alle mit der gewählten auftragungs und zahlungart gemeint.
Möchte am ende auch nur bei doppelklick auf knoten bzw eintrag. aus den gewählten kriterien eine neue anfrage für die schnittstelle zusammenbauen.
Ich könnte das ganze auch als tabelle machen, aber ein baum ist halt die vorgabe, genau wie die datenstruktur also was ich von der schnittstelle erhalte.
Gibt es denn da keine Möglichkeit. Da ich ja weiß welce ebnene nacheinanderkommen vielleicht noch eine klasse zwischen provider und model.
 
Wo genau ist Dein Problem? Wenn du genau weisst, wo welche Elemente in Deiner Liste stehen, dann weisst Du doch auch, welche Elemente jeweils die Kindelemente sind. Dann nimmst Du die, packst Die in ein Object[] Array und fertig ist die getChildren().
 
Status
Nicht offen für weitere Antworten.

Neue Themen


Zurück
Oben