rechtsklick im Static Control
Verfasst: 28.09.2006 15:19
Hallo wollte nur mal Fragen wie das Event heißt welches ausgelöst wird wenn ein Static Control mit der Rechten maustaste geklicked wird.
Das deutsche PureBasic-Forum
https://www.purebasic.fr/german/
Code: Alles auswählen
DisableGadget(ImageGadget, #True)
Code: Alles auswählen
;-TOP
; Kommentar : SubclassProc für Gadgets einbinden.
; Author : mk-soft
; Second Author :
; Datei : *.pb
; Version : 1.01
; Erstellt : 03.10.2006
; Geändert :
;
; Compilermode :
;
; ***************************************************************************************
;- Konstanten
Enumeration
#Window
EndEnumeration
Enumeration
#Menu
EndEnumeration
Enumeration
#Menu_Exit
EndEnumeration
Enumeration
#Statusbar
EndEnumeration
Enumeration
#Button
EndEnumeration
; ***************************************************************************************
;- Globale Variablen
Global exit = 0
;- Original WndProc
Global wpOrigButtonProc.l
; SubclassProc für Button
Procedure ButtonSubclassProc(hwnd, uMsg, wParam, lParam)
Select uMsg
Case #WM_RBUTTONDOWN
Debug "Rechter Button ab"
ProcedureReturn #True
EndSelect
; Originale Proc aufrufen
ProcedureReturn CallWindowProc_(wpOrigButtonProc, hwnd, uMsg, wParam, lParam)
EndProcedure
;- Fenster
style = #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_SizeGadget
If OpenWindow(#Window, #PB_Ignore, #PB_Ignore, 400, 300, "Fenster", style)
; Menu
If CreateMenu(#Menu, WindowID(#Window))
MenuTitle("&Datei")
MenuItem(#Menu_Exit, "Be&enden")
EndIf
; Statusbar
CreateStatusBar(#Statusbar, WindowID(#Window))
; Gadgets
If CreateGadgetList(WindowID(#Window))
ButtonGadget(#Button, 10, 10, 120, 25, "Hallo Welt")
EndIf
; Für den Button eine SubclassProc einbinden.
wpOrigButtonProc = SetWindowLong_(GadgetID(#Button), #GWL_WNDPROC, @ButtonSubclassProc())
;-- Hauptschleife
Repeat
event = WaitWindowEvent()
window = EventWindow()
menu = EventMenu()
gadget = EventGadget()
type = EventType()
Select event
Case #PB_Event_Menu ; ein Menü wurde ausgewählt
Select menu
Case #Menu_Exit
Exit = 1
EndSelect
Case #PB_Event_Gadget ; ein Gadget wurde gedrückt
Select gadget
Case #Button
If type = #PB_EventType_LeftClick
Debug "Linker Button Klick"
EndIf
EndSelect
Case #PB_Event_CloseWindow ; das Schließgadget vom Fenster wurde gedrückt
Exit = 1
Case #PB_Event_Repaint ; der Fensterinhalt wurde zerstört und muss neu gezeichnet werden (nützlich für 2D Grafik-Operationen)
Case #PB_Event_SizeWindow ; das Fenster wurde in der Größe verändert
Case #PB_Event_MoveWindow ; das Fenster wurde verschoben
Case #PB_Event_ActivateWindow ; das Fenster wurde aktiviert (hat den Fokus erhalten)
Case #PB_Event_SysTray ; das SysTray wurde aktiviert
EndSelect
Until Exit
EndIf
; Vor löschen des Gadget auf die Original Proc wieder umleiten
SetWindowLong_(GadgetID(#Button), #GWL_WNDPROC, wpOrigButtonProc)
Klick mit rechter Maustaste geht mit WM_CONTEXTMENU.Konne hat geschrieben:Leute danke für all die erklärungen aber ich bin ja nicht blöd was ich will ist:
Ich will wissen wie die Events heißen wenn ein Static Contzrol geklickt wird. Da ich dass in der MSDN nicht gefunden habe. (auser Linksklick) ich will aber auch die anderen Klciks. Also welche Messages werden von einem Static Control an seinen Parent gesendet wenn es geklickt wird ?