möchte gerne mit dem Drücken der Taste Strg + Button Druck eine Funktion auslösen!
Dient zum Auslösen von Strg+F, wie ist das mit Button oder geht das nicht?AddKeyboardShortcut(0, #PB_Shortcut_Control | #PB_Shortcut_F, 15)
Gruss ... Velindos!
Dient zum Auslösen von Strg+F, wie ist das mit Button oder geht das nicht?AddKeyboardShortcut(0, #PB_Shortcut_Control | #PB_Shortcut_F, 15)
Code: Alles auswählen
; Strg + Button-Druck
Enumeration
#Wnd
#Btn
#ESC_Velindos
EndEnumeration
; -------
OpenWindow(#Wnd, 100, 200, 195, 260, "PureBasic Window", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget)
ButtonGadget(#Btn,10,10,180,250,"Strg + LCLK Mouse")
AddKeyboardShortcut(#Wnd, #PB_Shortcut_Control |#PB_Shortcut_F, #ESC_Velindos)
; Hier sollte er mit Button auslösen
AddKeyboardShortcut(#Wnd, #PB_Shortcut_Control |#Btn, #ESC_Velindos)
; -------
;-REPEAT
Define EventID
Repeat
EventID = WaitWindowEvent()
Select EventID
Case #PB_Event_CloseWindow
;{ Event CloseWindow
End
;}
Case #PB_Event_Menu
;{ Event Menu
Select EventMenu()
Case #ESC_Velindos
End
EndSelect
;}
EndSelect
ForEver
; -------
Code: Alles auswählen
; Strg + Button-Druck
Enumeration
#Wnd
#Btn
#ESC_Velindos
EndEnumeration
; -------
OpenWindow(#Wnd, 100, 200, 195, 260, "PureBasic Window", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget)
ButtonGadget(#Btn,10,10,180,250,"Strg + LCLK Mouse")
AddKeyboardShortcut(#Wnd, #PB_Shortcut_Control |#PB_Shortcut_F, #ESC_Velindos)
; -------
;-REPEAT
Define EventID
Repeat
EventID = WaitWindowEvent()
Select EventID
Case #PB_Event_CloseWindow
;{ Event CloseWindow
End
;}
Case #PB_Event_Menu
;{ Event Menu
Select EventMenu()
Case #ESC_Velindos
End
EndSelect
Case #PB_Event_Gadget
If EventGadget() = #Btn And GetAsyncKeyState_(#VK_LCONTROL) & $8000
End
EndIf
;}
EndSelect
ForEver
; -------
Code: Alles auswählen
; Strg + Button-Druck
Enumeration
#Wnd
#ESC_Velindos
EndEnumeration
Global Btn
Global *gOldEditProc_297
Procedure DplClk_Btn(hWnd, uMsg, wParam, lParam)
; *gOldEditProc_297 = SetWindowLongPtr_(GadgetID(Btn), #GWL_WNDPROC, @DplClk_Btn())
Protected Result
Select uMsg
Case #WM_LBUTTONDOWN
Debug "LEFT!"
Case #WM_RBUTTONDOWN
Debug "RIHT!"
Result = 0
Default
Result = CallWindowProc_(*gOldEditProc_297, hWnd, uMsg, wParam, lParam)
EndSelect
ProcedureReturn Result
EndProcedure
; -------
OpenWindow(#Wnd, 100, 200, 195, 260, "PureBasic Window", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget)
Btn = ButtonGadget(#PB_Any,10,10,180,250,"Strg + LCLK Mouse")
*gOldEditProc_297 = SetWindowLongPtr_(GadgetID(Btn), #GWL_WNDPROC, @DplClk_Btn())
AddKeyboardShortcut(#Wnd, #PB_Shortcut_Control |#PB_Shortcut_F, #ESC_Velindos)
; -------
;-REPEAT
Define EventID
Repeat
EventID = WaitWindowEvent()
Select EventID
Case #PB_Event_CloseWindow
;{ Event CloseWindow
End
;}
Case #PB_Event_Menu
;{ Event Menu
Select EventMenu()
Case #ESC_Velindos
End
EndSelect
Case #PB_Event_Gadget
If EventGadget() = Btn And GetAsyncKeyState_(#VK_LCONTROL) & $8000
End
EndIf
;}
EndSelect
ForEver
; -------
Code: Alles auswählen
; Strg + Button-Druck
Enumeration
#Wnd
#ESC_Velindos
EndEnumeration
Global Btn
Global *gOldEditProc_297
Procedure DplClk_Btn(hWnd, uMsg, wParam, lParam)
; *gOldEditProc_297 = SetWindowLongPtr_(GadgetID(Btn), #GWL_WNDPROC, @DplClk_Btn())
Protected Result
Select uMsg
Case #WM_LBUTTONDOWN
If GetAsyncKeyState_(#VK_LCONTROL) & $8000
Debug "STRG + LINKSKLICK auf BUTTON!"
; End
Else
Debug "LINKSKLICK auf BUTTON!"
EndIf
Case #WM_RBUTTONDOWN
Debug "RECHTSKLICK auf BUTTON!"
Result = 0
Default
Result = CallWindowProc_(*gOldEditProc_297, hWnd, uMsg, wParam, lParam)
EndSelect
ProcedureReturn Result
EndProcedure
; -------
OpenWindow(#Wnd, 100, 200, 195, 260, "PureBasic Window", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget)
Btn = ButtonGadget(#PB_Any,10,10,180,250,"Strg + LCLK Mouse")
*gOldEditProc_297 = SetWindowLongPtr_(GadgetID(Btn), #GWL_WNDPROC, @DplClk_Btn())
AddKeyboardShortcut(#Wnd, #PB_Shortcut_Control |#PB_Shortcut_F, #ESC_Velindos)
; -------
;-REPEAT
Define EventID
Repeat
EventID = WaitWindowEvent()
Select EventID
Case #PB_Event_CloseWindow
;{ Event CloseWindow
End
;}
Case #PB_Event_Menu
;{ Event Menu
Select EventMenu()
Case #ESC_Velindos
End
EndSelect
Case #PB_Event_Gadget
; If EventGadget() = Btn And GetAsyncKeyState_(#VK_LCONTROL) & $8000
; End
; EndIf
;}
EndSelect
ForEver
; -------