Hallo, guten Tag.
Ich möchte bitte beim Drücken eines Button eine "1" ausgeben und beim loslassen einmal die "0".
Es soll nicht dauernd die "0" gesendet werden wenn der Button nicht gedrückt ist.
Danke.
Gruss
Button beim drücken "1" und beim loslassen "0"...
Re: Button beim drücken "1" und beim loslassen "0"...
Z.B.:
Code: Alles auswählen
EnableExplicit
Global ButtonCallback
Procedure ButtonCallback(hWnd, uMsg, wParam, lParam)
Select uMsg
Case #WM_LBUTTONDOWN
Debug "1"
Case #WM_LBUTTONUP
Debug "0"
EndSelect
ProcedureReturn CallWindowProc_(ButtonCallback, hWnd, uMsg, wParam, lParam)
EndProcedure
If OpenWindow(0, 0, 0, 500, 400, "Window", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
ButtonGadget(1, 10, 10, 100, 20, "Drück mich rein", 0)
ButtonCallback = SetWindowLongPtr_(GadgetID(1), #GWL_WNDPROC, @ButtonCallback())
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
End
EndSelect
ForEver
EndIf
- Chimorin
- Beiträge: 451
- Registriert: 30.01.2013 16:11
- Computerausstattung: MSI GTX 660 OC mit TwinFrozr III
6Gb DDR 3 RAM
AMD Phenom II X4 B55 @ 3,6GHz
Windows 7 Home Premium 64-bit
Re: Button beim drücken "1" und beim loslassen "0"...
Würde auch ohne WinAPI gehen. Du speicherst den aktuellen Status des Buttons in einer Variable und vergleichst ihn vorher mit dem alten Wert. Wenn der alte Wert 1 war, der Neue 0, wurde der Button gerade losgelassen.
Re: Button beim drücken "1" und beim loslassen "0"...
@Chimorin
Er möchte soweit ich weiß nicht den Toggle-Statuswert eines Buttons ermitteln, sondern ob der Benutzer gerade auf den Button drückt und den wieder loslässt.
Er möchte soweit ich weiß nicht den Toggle-Statuswert eines Buttons ermitteln, sondern ob der Benutzer gerade auf den Button drückt und den wieder loslässt.
Re: Button beim drücken "1" und beim loslassen "0"...
Hallo, vielen dank.
Dein Programm funktioniert richtig RSBasic.
Danke.
Gruss
Dein Programm funktioniert richtig RSBasic.
Danke.
Gruss