Blättern in LinkedList
-
- Beiträge: 20
- Registriert: 09.04.2006 15:56
- Wohnort: Bayern
Blättern in LinkedList
Möchte die Daten einer LinkedList in einem Gadget (Text?) anzeigen. Der Anwender soll darin blättern können (auf/ab).
Hat jemand ein Prozedur o. Codeschnipsel die mir weiterhelfen ?
Vielen DANK.
Hat jemand ein Prozedur o. Codeschnipsel die mir weiterhelfen ?
Vielen DANK.
Re: Blättern in LinkedList
Du kannst folgende Befehle verwenden:Bayernhans hat geschrieben:Möchte die Daten einer LinkedList in einem Gadget (Text?) anzeigen. Der Anwender soll darin blättern können (auf/ab).
Code: Alles auswählen
- NextElement(DeineLinkedList())
- PreviousElement(DeineLinkedList())
- SelectElement(DeineLinkedList())
P.S.: Falsches Forum. @Mod: bitte verschieben
a²+b²=mc²
@Bayernhans
meinst du das so in etwa?
c ya,
nco2k
meinst du das so in etwa?
Code: Alles auswählen
Structure TestStruc
Name.s
Alter.l
EndStructure
Global NewList TestList.TestStruc()
If AddElement(TestList())
TestList()\Name = "Hans"
TestList()\Alter = 31
Debug "Position: "+Str(ListIndex(TestList()))+" - Name: "+TestList()\Name+" - Alter: "+Str(TestList()\Alter)
EndIf
If AddElement(TestList())
TestList()\Name = "Dieter"
TestList()\Alter = 26
Debug "Position: "+Str(ListIndex(TestList()))+" - Name: "+TestList()\Name+" - Alter: "+Str(TestList()\Alter)
EndIf
If AddElement(TestList())
TestList()\Name = "Klaus"
TestList()\Alter = 42
Debug "Position: "+Str(ListIndex(TestList()))+" - Name: "+TestList()\Name+" - Alter: "+Str(TestList()\Alter)
EndIf
If AddElement(TestList())
TestList()\Name = "Heidi"
TestList()\Alter = 19
Debug "Position: "+Str(ListIndex(TestList()))+" - Name: "+TestList()\Name+" - Alter: "+Str(TestList()\Alter)
EndIf
Debug "Es befinden sich "+Str(CountList(TestList()))+" Elemente in der Linked List"
If OpenWindow(0, 0, 0, 200, 30, "Test", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
If CreateGadgetList(WindowID(0))
ButtonGadget(0, 5, 5, 25, 20, "<")
SelectElement(TestList(), 0)
TextGadget(1, 35, 5, 130, 20, TestList()\Name+" - "+Str(TestList()\Alter), #PB_Text_Border | #PB_Text_Center)
ButtonGadget(2, 170, 5, 25, 20, ">")
Repeat
WinEvent = WaitWindowEvent()
Select WinEvent
Case #PB_Event_Gadget
Select EventGadget()
Case 0
If ListIndex(TestList()) = 0
LastElement(TestList())
Else
PreviousElement(TestList())
EndIf
SetGadgetText(1, TestList()\Name+" - "+Str(TestList()\Alter))
Case 2
If ListIndex(TestList()) = CountList(TestList()) - 1
FirstElement(TestList())
Else
NextElement(TestList())
EndIf
SetGadgetText(1, TestList()\Name+" - "+Str(TestList()\Alter))
EndSelect
EndSelect
Until WinEvent = #PB_Event_CloseWindow
EndIf
EndIf
End
nco2k
~|__/
..o.o.. <--- This is Einkaufswagen. Copy Einkaufswagen into your signature to help him on his way to world domination.
..o.o.. <--- This is Einkaufswagen. Copy Einkaufswagen into your signature to help him on his way to world domination.
-
- Beiträge: 20
- Registriert: 09.04.2006 15:56
- Wohnort: Bayern
Danke nco2k, für die schnelle Reaktion.
ein paar kleine Änderungen, z. B. EventGadgetID(), und schon fliegt ide Kiste.
Vielleicht liegts an verschiedenen Versionen, ich progr. mit PB 3.94
Vielleicht liegts an verschiedenen Versionen, ich progr. mit PB 3.94
Code: Alles auswählen
Structure TestStruc
Name.s
Alter.l
EndStructure
NewList TestList.TestStruc()
If AddElement(TestList())
TestList()\Name = "Hans"
TestList()\Alter = 31
Debug "Position: "+Str(ListIndex(TestList()))+" - Name: "+TestList()\Name+" - Alter: "+Str(TestList()\Alter)
EndIf
If AddElement(TestList())
TestList()\Name = "Dieter"
TestList()\Alter = 26
Debug "Position: "+Str(ListIndex(TestList()))+" - Name: "+TestList()\Name+" - Alter: "+Str(TestList()\Alter)
EndIf
If AddElement(TestList())
TestList()\Name = "Klaus"
TestList()\Alter = 42
Debug "Position: "+Str(ListIndex(TestList()))+" - Name: "+TestList()\Name+" - Alter: "+Str(TestList()\Alter)
EndIf
If AddElement(TestList())
TestList()\Name = "Heidi"
TestList()\Alter = 19
Debug "Position: "+Str(ListIndex(TestList()))+" - Name: "+TestList()\Name+" - Alter: "+Str(TestList()\Alter)
EndIf
Debug "Es befinden sich "+Str(CountList(TestList()))+" Elemente in der Linked List"
If OpenWindow(0, 0, 0, 200, 30, #PB_Window_SystemMenu | #PB_Window_ScreenCentered, "Test")
If CreateGadgetList(WindowID(0))
ButtonGadget(0, 5, 5, 25, 20, "<")
SelectElement(TestList(), 0)
TextGadget(1, 35, 5, 130, 20, TestList()\Name+" - "+Str(TestList()\Alter), #PB_Text_Border | #PB_Text_Center)
ButtonGadget(2, 170, 5, 25, 20, ">")
Repeat
WinEvent = WaitWindowEvent()
Select WinEvent
Case #PB_Event_Gadget
Select EventGadgetID()
Case 0
If ListIndex(TestList()) = 0
LastElement(TestList())
Else
PreviousElement(TestList())
EndIf
SetGadgetText(1, TestList()\Name+" - "+Str(TestList()\Alter))
Case 2
If ListIndex(TestList()) = CountList(TestList()) - 1
FirstElement(TestList())
Else
NextElement(TestList())
EndIf
SetGadgetText(1, TestList()\Name+" - "+Str(TestList()\Alter))
EndSelect
EndSelect
Until WinEvent = #PB_Event_CloseWindow
EndIf
EndIf
End
nco2k
~|__/
..o.o.. <--- This is Einkaufswagen. Copy Einkaufswagen into your signature to help him on his way to world domination.
..o.o.. <--- This is Einkaufswagen. Copy Einkaufswagen into your signature to help him on his way to world domination.
Re: Danke nco2k, für die schnelle Reaktion.
> und schon fliegt ide Kiste.
wie meinen?
> Vielleicht liegts an verschiedenen Versionen, ich progr. mit PB 3.94
dann tu uns doch den Gefallen und schreib das in Deine Signatur.
Grüße ... Kiffi
wie meinen?
> Vielleicht liegts an verschiedenen Versionen, ich progr. mit PB 3.94
dann tu uns doch den Gefallen und schreib das in Deine Signatur.
Grüße ... Kiffi
a²+b²=mc²
-
- Beiträge: 20
- Registriert: 09.04.2006 15:56
- Wohnort: Bayern