Frage to gadgettype()

Anfängerfragen zum Programmieren mit PureBasic.
bin_neu_hier
Beiträge: 105
Registriert: 06.03.2019 21:52

Frage to gadgettype()

Beitrag von bin_neu_hier »

Servus Leute!
(Hoffentlich schaut hier noch gelegentlich jemand vorbei, sieht so still aus im Board.)

Habe ein Prgramm geschrieben, welches eine ganze Reihe von Gadgets verwendet. Allerdings nicht linear numeriert sondern im Nummernbereich von 100 bis 600 verteilt. Hat sich so ergeben, weil ich die Gadgets mit errechneten x- und y-Positionen plaziert habe und das auf verschiedene Panelgadget-Panels verteilt.

Jetzt geht es darum, die eingetragenen Werte zu speichern bzw. wieder zu laden. Da hatte ich folgende Idee:

Code: Alles auswählen

  For i = 100 To 600
   Select GadgetType(i) 
       
     Case #PB_GadgetType_ComboBox
       speichere die Gadgetnummer und Gadgetwert 
       
     Case #PB_GadgetType_Date
       speichere die Gadgetnummer und Gadgetwert 
              
     Case #PB_GadgetType_String
       speichere die Gadgetnummer und Gadgetwert 
       
   EndSelect
 Next
 
um dann beim Laden der Daten ungefähr so zu verfahren:
while "so lange daten vorliegen"
lese gadgetnummer
lese gadgetwert
speichere gadgetwert in gadget(gadgetnummer)
wend
Aber: Programm zeigt in der "select case" Schleife einen Fehler, sobald eine Nummer aufgerufen wird, für die offenbar gar kein Gadget erzeugt wurde. Gibt es eine Abfrage, die feststellt "es gibt gar kein Gadget mit Nummer soundso"?
Bin mit 21 erstmals mit Computern in Kontakt gekommen und konnte mich daher in meiner Jugend ganz auf den Alkohol konzentrieren. Bin nun seit fast 40 Jahren programmiertechnisch konstant auf Anfänger-Level, konnte jedoch beim Thema Alkohol eine gewisse Virtuosität erreichen.
Irgendwas muss man ja gut können.
Benutzeravatar
Bisonte
Beiträge: 2427
Registriert: 01.04.2007 20:18

Re: Frage to gadgettype()

Beitrag von Bisonte »

IsGadget(GadgetNummer) ist dein Freund ;)
PureBasic 6.04 LTS (Windows x86/x64) | Windows10 Pro x64 | Asus TUF X570 Gaming Plus | R9 5900X | 64GB RAM | GeForce RTX 3080 TI iChill X4 | HAF XF Evo | build by vannicom​​
GPI
Beiträge: 1511
Registriert: 29.08.2004 13:18
Kontaktdaten:

Re: Frage to gadgettype()

Beitrag von GPI »

Nur so ein allgemeiner Tip: Verwende bei sowas lieber #pb_any und speichere dir die Ergebnisse entweder in einer Newlist oder einen Array ab.
Erstmal ist das ganze flexibler, weil du dir nicht mehr nummern ausdenken musst und es auch nicht mehr zu Überschneidungen kommt. Zum anderen solltest du bedenken, das PB intern die Gadgets auch abspeichert und wenn du bspw. eine Nummer 1000 nimmt, dann reservert PB hier erstmal soviel Speicher, um wirklich auch tausend Gadget-Infos aufzunehmen.
CodeArchiv Rebirth: Deutsches Forum Github Hilfe ist immer gern gesehen!
bin_neu_hier
Beiträge: 105
Registriert: 06.03.2019 21:52

Re: Frage to gadgettype()

Beitrag von bin_neu_hier »

:bounce:
IsGadget - das isses! Vielen Dank an Bisonte! Du hast mich gerettet!

Und auch Dank an GPI, Deine Anregungen werde ich wohl bedenken müssen ...

bin_neu_hier
Bin mit 21 erstmals mit Computern in Kontakt gekommen und konnte mich daher in meiner Jugend ganz auf den Alkohol konzentrieren. Bin nun seit fast 40 Jahren programmiertechnisch konstant auf Anfänger-Level, konnte jedoch beim Thema Alkohol eine gewisse Virtuosität erreichen.
Irgendwas muss man ja gut können.
Antworten