Speichern von Daten aus einem ListViewGadget ???
Speichern von Daten aus einem ListViewGadget ???
Hallo,
ich bekomme es nicht hin Daten aus einem ListViewGadget zu speichern.
Wie lese ich die Daten aus?
Gibts da nen besonderen Befehl?
ich bekomme es nicht hin Daten aus einem ListViewGadget zu speichern.
Wie lese ich die Daten aus?
Gibts da nen besonderen Befehl?
PureBasic 4.00 / Anfänger
Re: Speichern von Daten aus einem ListViewGadget ???
> Wie lese ich die Daten aus?
mit GetGadgetItemText()
Grüße ... Kiffi
mit GetGadgetItemText()
Grüße ... Kiffi
a²+b²=mc²
> nimmt er dann alle Werte(Zeilen) aus der Liste oder nur einen bestimmtes?
was sagt denn die Hilfe zu diesem Befehl?
> Ich will es danach wieder in einem neuen Programm einlesen und da
> brauche ich alle in das ListViewgadget eingetragenen Werte.
Du musst mit einer Schleife über alle Zeilen des ListIconGadgets laufen.
Hierin hast Du eine weitere Schleife über alle Spalten der aktuellen Zeile.
Grüße ... Kiffi
was sagt denn die Hilfe zu diesem Befehl?
> Ich will es danach wieder in einem neuen Programm einlesen und da
> brauche ich alle in das ListViewgadget eingetragenen Werte.
Du musst mit einer Schleife über alle Zeilen des ListIconGadgets laufen.
Hierin hast Du eine weitere Schleife über alle Spalten der aktuellen Zeile.
Grüße ... Kiffi
a²+b²=mc²
Aus der hilfe ist nicht herauszulesen ob alle Einträge aus der ListViewGadget gelesen werden.
Ausserdem funktioniert der befehl bei mir nicht, ich bekomm immerzu die Fehlermeldung. "Incorrect Number of Parameters"
Also mach ich irgendwas am Eintrag des Befehls falsch, hab aber keine ahnung was.
Das hatte ich jetzt nur für den ersten Wert in der Liste gedacht.
Ausserdem funktioniert der befehl bei mir nicht, ich bekomm immerzu die Fehlermeldung. "Incorrect Number of Parameters"
Also mach ich irgendwas am Eintrag des Befehls falsch, hab aber keine ahnung was.
Das hatte ich jetzt nur für den ersten Wert in der Liste gedacht.
Code: Alles auswählen
If OpenWindow(0,100,100,440,150,"Fenster 1",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
If CreateGadgetList(WindowID(0))
TextGadget(1,28,35,120,20,"Gesuchter Schein")
StringGadget(2,20,65,120,20,"")
TextGadget(3,168,35,120,20,"Neuer Schein")
StringGadget(4,150,65,120,20,"")
ButtonGadget(5,160,105,100,20,"Hinzufügen")
ListViewGadget(6,300,30,120,100)
ButtonGadget(7,32,105,100,20,"Vergleichen")
If CreateToolBar(0, WindowID(0))
ToolBarStandardButton(10, #PB_ToolBarIcon_New)
ToolBarStandardButton(11, #PB_ToolBarIcon_Open)
ToolBarStandardButton(12, #PB_ToolBarIcon_Save)
EndIf
EndIf
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_CloseWindow
Quit = 1
EndIf
If EventID = #PB_Event_Menu
If EventMenu()=10
SetGadgetText(2,"")
ClearGadgetItemList(6)
EndIf
;-----------------------------------------------------
;- Speichern
If EventMenu()=12
StandardDatei$ = "C:\test.txt"
Pattern$ = "Text-Dateien (*.txt)|*.txt|Alle Dateien (*.*)|*.*"
PatternPosition = 0
DateiName$ = SaveFileRequester("Speichern unter...", StandardDatei$, Pattern$, PatternPosition)
If CreateFile (0,DateiName$)
GetGadgetItemText(6,1)
Else
MessageRequester("","nix create file",0)
EndIf
CloseFile(0)
EndIf
;------------------------------------------------------
EndIf
If EventID = #PB_Event_Gadget
If EventGadget()=5
a$=GetGadgetText(4)
If a$ = ""
MessageRequester("Fehler","Ich vermisse die Eingabe",0)
Else
AddGadgetItem(6,-1,""+a$)
SetGadgetText(4,"")
SetActiveGadget(4)
EndIf
EndIf
EndIf
If EventID = #PB_Event_Gadget
If EventGadget()=7
Gesucht$ = GetGadgetText(2)
Anz = CountGadgetItems(6)
For i = 0 To Anz - 1
SetGadgetState(6, i)
Vorhandene$ = GetGadgetText(6)
If Mid(Gesucht$,1,Len(Gesucht$)) = Mid(Vorhandene$,1,Len(Vorhandene$))
control = control + 1
Else
control = control + 0
EndIf
Next i
If control = 0
MessageRequester("","Leider nichts",0)
Else
MessageRequester("","Gewonnen",0)
EndIf
SetGadgetText(2,"")
SetGadgetText(4,"")
ClearGadgetItemList(6)
EndIf
EndIf
Until Quit=1
CloseWindow(0)
EndIf
Zuletzt geändert von sebsch80 am 22.10.2006 00:04, insgesamt 1-mal geändert.
PureBasic 4.00 / Anfänger
> Ich hab die Hilfe gelesen und zwar schon seit 2 Stunden.
glaube ich Dir nicht.
Egal:
Grüße ... Kiffi
glaube ich Dir nicht.

Egal:
Code: Alles auswählen
For ZeilenZaehler = 0 to CountGadgetItems(DeinListIconGadget) - 1
For SpaltenZaehler = 0 to AnzahlSpalten - 1
Debug "Zeile: " + Str(ZeilenZaehler)
Debug "Spalte: " + Str(SpaltenZaehler)
Debug GetGadgetItemText(DeinListIconGadget, ZeilenZaehler, SpaltenZaehler
Next ; SpaltenZaehler
Next ; ZeilenZaehler
a²+b²=mc²
Gut, ich glaub Dir mal.sebsch80 hat geschrieben:@Mr.X
Ich hab die Hilfe gelesen und zwar schon seit 2 Stunden.
Komme aber zu keiner Lösung.
Hier ist ein Forum für Anfänger (was ich bin) und deshalb sind meine Fragen wohl berechtigt.
Aber ich denke Dein Problem liegt an anderer Stelle. Du benötigst eine Matrix aus n Zeilen und m Spalten. Dazu verwendet man das ListIconGadget. Mit AddGadgetColumn kannst Du zur ersten Spalte beliebg weitere hinzufügen. Das machst Du bereits beim Erstellen Deiner Gadgetliste (CreateGadgetList). Ein leeres Element fügst Du mit AddGadgetItem hinzu. Und den Inhalt der Zellen (Spalte 0 bis m-1) in der Zeile n-1, wobei n durch Mitzählen der AddGadgetItems beginnend bei 1 oder mittelns CountGadgetItems ermittelt wird.
Das ListViewGadget besteht in Gegensatz zum ListIconGadget nur aus einer Spalte.
Genaue Informationen zu den Parametern der einzelnen Kommandos findest Du in der Hilfe - ehrlich. Gut jetzt mußt Du wirklich 2 Stunden lesen um alles zu verstehen und richtig zu kombinieren.
Aber die Nacht hat ja grad erst begonnen und heute ist Sonntag.
Viel Spass
Mr.X
Und Du seine Anfrage nichtKiffi hat geschrieben:> Ich hab die Hilfe gelesen und zwar schon seit 2 Stunden.
glaube ich Dir nicht.
Egal:
Grüße ... KiffiCode: Alles auswählen
For ZeilenZaehler = 0 to CountGadgetItems(DeinListIconGadget) - 1 For SpaltenZaehler = 0 to AnzahlSpalten - 1 Debug "Zeile: " + Str(ZeilenZaehler) Debug "Spalte: " + Str(SpaltenZaehler) Debug GetGadgetItemText(DeinListIconGadget, ZeilenZaehler, SpaltenZaehler Next ; SpaltenZaehler Next ; ZeilenZaehler

ListViewGadget, nicht nach einem ListIconGadget.
(Sorry, konte ich mir jetzt nicht verkneifen...)
Zum Thema:
Habe noch nicht mit einem ListView in PB gearbeitet, aber wenn ich die
PB-Hilfe richtig verstanden habe mach es einfach so: In einer Schleife
jedes Element mit GetGadgetItemText() auslesen. Im Parameter spalte
eine 0 angeben, wird ignoriert, aber was reinschreiben musst Du, damit
der Compiler nicht meckert.
Nein, ich habe die Suche nicht benutzt, und deshalb auch nichts dazu gefunden... 
