ich hab schon wieder ein Problemchen.
Ich hab ein Prog in dem man mit einem SpinGG verschiedene Werte einstellen kann. Einige davon sind unzulässig. Dann soll der MsGReq erscheinen. soweit alles klar. Aber wenn der Anwender schnell über die unzulässigen Werte hinweg"Spint", soll nichts passieren, damit man nicht dauernd ok klicken muss.
Ich hab das Prob mal in ein Beispiel vereinfachtes Beispiel gefasst.
Hab auch schon mal was mit 'nem Thread versucht, hat aber nicht geklappt.
Code: Alles auswählen
;
Procedure Test()
a = Val(GetGadgetText(5))
b = Val(GetGadgetText(6))
c = GetGadgetState(1)
b = a/c
d = b * c
SetGadgetText(7,Str(d))
If d <> a
MessageRequester("", "ungeeignete Kombination")
EndIf
EndProcedure
If OpenWindow(0, 60, 30, 60,200,"")
If CreateGadgetList(WindowID(0))
TextGadget (0, 5, 10, 25,20,"c= ")
SpinGadget (1, 40, 10, 25,20,1,50,#PB_Spin_Numeric)
TextGadget (2, 5, 80, 25,20,"a=")
TextGadget (3, 5, 110,25,20,"b=")
TextGadget (4, 5, 140,25,20,"Res.")
StringGadget(5, 40, 80, 35,20,"50")
StringGadget(6, 40, 110,35,20,"5")
StringGadget(7, 40, 140,35,20,"50")
SetGadgetState(1,1)
EndIf
EndIf
Repeat
EventID = WaitWindowEvent()
If EventID = #PB_Event_Gadget
Select EventGadget()
Case 1
Test()
EndSelect
EndIf
Until EventID = #PB_Event_CloseWindow
End