Items aus einem Treeview auslesen

Übersicht BlitzMax, BlitzMax NG Allgemein

Neue Antwort erstellen

Freeman

Betreff: Items aus einem Treeview auslesen

BeitragMo, Mai 29, 2006 19:25
Antworten mit Zitat
Benutzer-Profile anzeigen
Hi

ich schreibe an einem Programm und habe ein Problem. Unter Windows konnte ich die Items aus einem Treeview wie folgt auslesen:

Code: [AUSKLAPPEN]

Strict

Local window:TGadget=CreateWindow("My Window",50,50,240,240)
Local treeview:TGadget=CreateTreeView(0,0,200,200,window)

SetGadgetLayout treeview,2,2,2,2

Local root:TGadget=TreeViewRoot(treeview)

Local help:TGadget=AddTreeViewNode("Help",root)
AddTreeViewNode "topic 1",help
AddTreeViewNode "topic 2",help
AddTreeViewNode "topic 3",help

Local projects:TGadget=AddTreeViewNode("Projects",root)
AddTreeViewNode "project 1",projects
AddTreeViewNode("project 2",projects)
AddTreeViewNode("project 3 is a big waste of time",projects)

While WaitEvent()
   Select EventID()

                Case EVENT_GADGETSELECT
     Local NODE:TGadget = SelectedTreeViewNode(treeview)
      Local s:String=String(NODE.name)
                     print s
      Case EVENT_WINDOWCLOSE
         End
   End Select
Wend


unter Linux klappt das aber plötzlich nichtmehr...mache ich hier was falsch?
Danke für eure Hilfe

Fr3eMaN

rema

BeitragMo, Mai 29, 2006 20:16
Antworten mit Zitat
Benutzer-Profile anzeigen
Das liegt an der Datei: fltkgui.bmx unter fltkmaxgui.mod

Wenn du schaust, so wird der Text nicht mehr in "name" sondern in der Variabel "text" gespeichert...



Code: [AUSKLAPPEN]
Type TFLNode Extends TFLWidget
   Field   owner:TFLWidget
   Field   parent:TFLNode
'   Field   kids:TList=New TList
   Field   index,open
   Field   indent$,text$,label$,icon

   Method Delete()
      Free()
   End Method

   Method InsertNode:TGadget(pos,text$,icon)
      Local   n:TFLNode
      Local   l:TLink
      If pos>=0 And pos<kids.count()
         n=TFLNode(kids.ValueAtIndex(pos))
         l=kids.FindLink(n)
      EndIf      
      n=New TFLNode
      n.parent=Self
      n.owner=owner
      n.text=text
      n.indent=indent+"~t"
      If l
         kids.InsertBeforeLink n,l
      Else
         kids.AddLast n
      EndIf
      owner.SetDirty
      Return n
   End Method



Aber mit einem kleinen Trick geht es:

Code: [AUSKLAPPEN]
         Local s:String=String(TFLNode(NODE).text)

Freeman

BeitragMo, Mai 29, 2006 20:29
Antworten mit Zitat
Benutzer-Profile anzeigen
findet man soetwas irgendwo? Da man ja sowas in der Hilfe nicht findet wäre es gut wenn man sowas zusammentragen könnte. Solche dinge wie Appstub und so ist vielleicht nicht jedem bekannt

Fr3eMaN

rema

BeitragMo, Mai 29, 2006 20:35
Antworten mit Zitat
Benutzer-Profile anzeigen
Da musst du nur dem Quellcode nachgehen...

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Allgemein

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group