Hallo!
Für die Mithilfe der Community wäre ich sehr dankbar:
---- CODE-Anfang ----
...
DateGadget(1000,10,10,250,20,"Datum: %dd.%mm.%yyyy Uhrzeit: %hh:%ii")
DateGadget(1001,10,50,250,20,"Datum: %dd.%mm.%yyyy Uhrzeit: %hh:%ii")
von.l=GetGadgetState(1000)
von+3600
...
SetGadgetState(1001,von)
...
---- CODE-Ende ----
obiger Quellcode funktioniert einwandfrei, wenn ich die Kompilierung aus Purebasic mit F5 durchführe und das Programm starte.
Wenn ich meinen Quellcode in eine EXE kompiliere, dann funktioniert SetGadgetState() in der EXE-Datei nicht.
Wer kann mir helfen? Handelt es sich um einen Bug???
Carpe Diem
Arndt
Spezielles Problem mit SetGadgetState()
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Hab den Code mal funktionstüchtig vervollständigt! Funktioniert in meiner Version als Exe, sowie in der IDE
Code: Alles auswählen
If OpenWindow(0, 100, 100, 150, 100, #PB_Window_SystemMenu, "")
If CreateGadgetList(WindowID(0))
DateGadget(0, 0, 0, 150, 20, "Datum: %dd.%mm.%yyyy Uhrzeit: %hh:%ii")
DateGadget(1, 0, 50, 150, 20, "Datum: %dd.%mm.%yyyy Uhrzeit: %hh:%ii")
von.l = GetGadgetState(0)
von + 3600
SetGadgetState(1, von)
EndIf
EndIf
Repeat
Until WaitWindowEvent() = #PB_Event_CloseWindow
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Vielen Dank für die schnelle Antwort aber..... 
Code
Ich habe gerade gemerkt, dass ich in meinem ersten Teil vergessen habe zu erwähnen, dass die Erhöhung von 'von' durch einen Button erfolgt. Ich habe Deinen Quellcode entsprechend erweitert und mein Problem ist vorhanden: mit F5 kein Probelm, als EXE-Datei funktioniert es nicht.
Ich bin gespannt, ob es bei Dir klappt.
Carpe Diem
Arndt

Code
Code: Alles auswählen
If OpenWindow(0, 100, 100, 450, 400, #PB_Window_SystemMenu, "")
If CreateGadgetList(WindowID(0))
DateGadget(0, 0, 0, 250, 20, "Datum: %dd.%mm.%yyyy Uhrzeit: %hh:%ii")
DateGadget(1, 0, 50, 250, 20, "Datum: %dd.%mm.%yyyy Uhrzeit: %hh:%ii")
ButtonGadget(2,0,100,100,100,"TEST")
von.l = GetGadgetState(0)
von + 3600
SetGadgetState(1, von)
EndIf
EndIf
Repeat
event=WaitWindowEvent()
Select event
Case #PB_Event_Gadget
Select EventGadgetID()
Case 2
von+3600
SetGadgetState(1,von)
EndSelect
EndSelect
Until event = #PB_Event_CloseWindow
Ich bin gespannt, ob es bei Dir klappt.
Carpe Diem
Arndt
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Funktioniert einwandfrei!
Um dies zu verdeutlichen habe ich noch eine Zeile eingefügt, wenn der Button
gedrückt wird. Die Anzeige unten entspricht dann der von Oben plus einer
Stunde.
Um dies zu verdeutlichen habe ich noch eine Zeile eingefügt, wenn der Button
gedrückt wird. Die Anzeige unten entspricht dann der von Oben plus einer
Stunde.
Code: Alles auswählen
If OpenWindow(0, 100, 100, 450, 400, #PB_Window_SystemMenu, "")
If CreateGadgetList(WindowID(0))
DateGadget(0, 0, 0, 250, 20, "Datum: %dd.%mm.%yyyy Uhrzeit: %hh:%ii")
DateGadget(1, 0, 50, 250, 20, "Datum: %dd.%mm.%yyyy Uhrzeit: %hh:%ii")
ButtonGadget(2,0,100,100,100,"TEST")
von.l = GetGadgetState(0)
von + 3600
SetGadgetState(1, von)
EndIf
EndIf
Repeat
event=WaitWindowEvent()
Select event
Case #PB_Event_Gadget
Select EventGadgetID()
Case 2
von.l = GetGadgetState(0)
von+3600
SetGadgetState(1,von)
EndSelect
EndSelect
Until event = #PB_Event_CloseWindow
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

HIIIIILFE!!! Bei mir funktioniert es nicht!!!
Code: Alles auswählen
If OpenWindow(0, 100, 100, 450, 400, #PB_Window_SystemMenu, "")
If CreateGadgetList(WindowID(0))
DateGadget(0, 0, 0, 250, 20, "Datum: %dd.%mm.%yyyy Uhrzeit: %hh:%ii")
DateGadget(1, 0, 50, 250, 20, "Datum: %dd.%mm.%yyyy Uhrzeit: %hh:%ii")
ButtonGadget(2,0,100,100,100,"TEST")
von.l = GetGadgetState(0)
von + 3600
SetGadgetState(1, von)
EndIf
EndIf
Repeat
event=WaitWindowEvent()
Select event
Case #PB_Event_Gadget
Select EventGadgetID()
Case 2
von.l = GetGadgetState(0)
von+3600
SetGadgetState(1,von)
EndSelect
EndSelect
Until event = #PB_Event_CloseWindow
bei
CASE 2
von.l=GetgadgetState(0)
die Zeile 'von.l=GetGadgetState(0)', dann funktioniert es auch wieder mit F5. Aber in der EXE nicht.
WORAN LIEGT DAS??? Ich habe Windows XP Professional und Purebasic 3.94
Schöne Grüße
Arndt
so gehts auch mit der EXE (PB 3.94 und XP Pro):
Warum das nur so geht, weiß ich leider nicht. Würde auf einen Bug tippen, aber vielleicht hat ja jemand noch eine Erklärung dafür.
Code: Alles auswählen
If OpenWindow(0, 100, 100, 450, 400, #PB_Window_SystemMenu, "")
If CreateGadgetList(WindowID(0))
DateGadget(0, 0, 0, 250, 20, "Datum: %dd.%mm.%yyyy Uhrzeit: %hh:%ii")
DateGadget(1, 0, 50, 250, 20, "Datum: %dd.%mm.%yyyy Uhrzeit: %hh:%ii")
ButtonGadget(2,0,100,100,100,"TEST")
von.l = GetGadgetState(0)
von + 3600
SetGadgetState(1, von)
EndIf
EndIf
Repeat
event=WaitWindowEvent()
Select event
Case #PB_Event_Gadget
Select EventGadgetID()
Case 2
von+3600
egal.l = GetGadgetState(0)
SetGadgetState(1,von)
EndSelect
EndSelect
Until event = #PB_Event_CloseWindow
PB 4.02 XP Pro SP2 "Der Code ist willig, aber der Prozessor ist schwach."
Es gibt keine Vista-Witze. Es ist alles wahr!
Es gibt keine Vista-Witze. Es ist alles wahr!