Procedure wird mehrfach durchlaufen
Verfasst: 25.07.2013 13:33
Hallo,
nach einiger Zeit versuche ich mich nun tiefer mit PB zu befassen
Ich habe mal eine einfache Programmstruktur erstellt die auch vom Prinzip funktioniert.
Nun tritt aber ein Effekt auf - die Prozeduren "Programmteildummy" werden nach dem Betätigen des zuständigen Button mehrfach ausgeführt
Was ist da faul ?
Danke
Gruß Frank
nach einiger Zeit versuche ich mich nun tiefer mit PB zu befassen

Ich habe mal eine einfache Programmstruktur erstellt die auch vom Prinzip funktioniert.
Nun tritt aber ein Effekt auf - die Prozeduren "Programmteildummy" werden nach dem Betätigen des zuständigen Button mehrfach ausgeführt

Was ist da faul ?
Danke
Gruß Frank
Code: Alles auswählen
; Testprogramm ACB - Controller
EnableExplicit ;nur explizit def Variablen sind erlaubt
Define EventID.l ;EventID = Variable zum Abfragen in der Event-Schleife -> Repeat
EventID = 0
Procedure OpenWindow_0() ;Hauptfenster
OpenWindow(1, 100, 100, 600, 400, "ACB - Controller Test01", #PB_Window_SystemMenu|#PB_Window_MinimizeGadget|#PB_Window_ScreenCentered) ;Hauptfenster
ProcedureReturn
EndProcedure
Procedure Set_Button() ;Button setzen
ButtonGadget(2, 10, 50, 50, 50, "160 m") ;Button_160
ButtonGadget(3, 90, 50, 50, 50, "80 m") ;Button_80
ButtonGadget(4, 170, 50, 50, 50, "40 m") ;Button_40
ButtonGadget(5, 250, 50, 50, 50, "30 m") ;Button_30
EndProcedure
Procedure Set_160m() ;Programmteildummy
PrintN("TUNED 160m")
Delay(1000)
EndProcedure
Procedure Set_80m() ;Programmteildummy
PrintN("TUNED 80m")
Delay(1000)
EndProcedure
Procedure Set_40m() ;Programmteildummy
PrintN("TUNED 40m")
Delay(1000)
EndProcedure
Procedure Set_30m() ;Programmteildummy
PrintN("TUNED 30m")
Delay(1000)
EndProcedure
OpenConsole() ;Console zum Test der Proceduren
OpenWindow_0() ;Hauptfenster erstellen
Set_Button() ;Button setzen
Repeat
EventID = WaitWindowEvent() ;Event aus Hauptfenster abwarten
Select EventGadget() ;Auswertung der Button und Aufruf der Unterprogramme
Case 2
Set_160m()
Case 3
Set_80m()
Case 4
Set_40m()
Case 5
Set_30m()
EndSelect
Until EventID = #PB_Event_CloseWindow
End