Einlesen einer NEWLIST
Verfasst: 08.06.2012 12:57
Hallo Leute,
Möchte meinen Daten von der Datenbank in einen Listgadget anzeigen und dort über die Newlist navigieren etc. Dies wegen der Vorteile von NEWLIST beim Löschen eines Eintrages oder Hinzufügen.
Nun habe ich begonnen die Newlist zu meinen Daten zu füttern.
Wenn ich jedoch den letzten Datensatz auslese stürtzt die Sache, warum ???
Gruss ... Velindos
Möchte meinen Daten von der Datenbank in einen Listgadget anzeigen und dort über die Newlist navigieren etc. Dies wegen der Vorteile von NEWLIST beim Löschen eines Eintrages oder Hinzufügen.
Nun habe ich begonnen die Newlist zu meinen Daten zu füttern.
Wenn ich jedoch den letzten Datensatz auslese stürtzt die Sache, warum ???
Code: Alles auswählen
; PureBasic Visual Designer v3.95 build 1485 (PB4Code)
;- Window Constants
;
Enumeration
#MyWindow
EndEnumeration
;- Gadget Constants
;
Enumeration
#ListIcon_0
#NewLaden
#NewNeuladen
#NewErster
#NewMinus
#New_Data
#NewPlus
#NewEnde
#NewInsert
#NewDelete
#String_1
#String_2
#String_3
EndEnumeration
Structure sData
ID.s
Stichwort.s
DID.s
EndStructure
Global NewList MyDataList.sData()
Global stichwort$="Testeintrag"
Procedure Listgadgetfuellen()
For k = 0 To 120
AddElement(MyDataList())
MyDataList()\ID = Str(k)
MyDataList()\Stichwort = stichwort$+" "+Str(k)
MyDataList()\DID = Str(120-k)
AddGadgetItem(#ListIcon_0,-1,Str(k)+ Chr(10)+stichwort$+" "+Str(k)+Chr(10)+Str(120-k) )
SetGadgetItemData(#ListIcon_0, CountGadgetItems(#ListIcon_0)-1, k-1)
Next
EndProcedure
Procedure Open_Window_0()
If OpenWindow(#MyWindow, 220, 0, 551, 484, "New window ( 0 )", #PB_Window_SystemMenu | #PB_Window_SizeGadget | #PB_Window_TitleBar )
;-
ListIconGadget(#ListIcon_0, 16, 32, 515, 221, "LID", 100,#PB_ListIcon_FullRowSelect|#PB_ListIcon_GridLines)
AddGadgetColumn(#ListIcon_0, 1, "Stichwort", 367)
AddGadgetColumn(#ListIcon_0, 2, "DB", 60)
ButtonGadget(#NewLaden, 19, 265, 53, 27, "Laden")
ButtonGadget(#NewNeuladen, 78, 265, 57, 27, "Refresh")
ButtonGadget(#NewErster, 188, 264, 55, 29, "|<")
ButtonGadget(#NewMinus, 248, 265, 59, 27, "<")
StringGadget(#New_Data, 315, 266, 61, 29, "")
ButtonGadget(#NewPlus, 382, 265, 61, 30, ">")
ButtonGadget(#NewEnde, 447, 263, 48, 31, ">|")
ButtonGadget(#NewInsert, 498, 263, 43, 31, "Insert")
ButtonGadget(#NewDelete, 142, 265, 38, 28, "Delete")
StringGadget(#String_1, 22, 320, 39, 30, "")
StringGadget(#String_2, 119, 318, 209, 34, "")
StringGadget(#String_3, 377, 320, 92, 34, "")
EndIf
EndProcedure
Open_Window_0()
;{- WINDWOS Repeat
;- WINDWOS Repeat
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Break
Case #PB_Event_Gadget
Select EventGadget()
Case #NewLaden
Listgadgetfuellen()
Case #ListIcon_0
Select EventType()
Case #PB_EventType_LeftDoubleClick
GID2= GetGadgetItemData(#ListIcon_0, GetGadgetState(#ListIcon_0))
Debug GID2
ListenEnde = ListSize(MyDataList())
Debug ListenEnde
SelectElement (MyDataList(), ListenEnde )
meinid$ = MyDataList()\ID
SetGadgetText(#New_Data, meinid$)
EndSelect
EndSelect
EndSelect
Until EventID = #PB_Event_CloseWindow And EventWindow = #MyWindow
Gruss ... Velindos