ich würde gern die buttons in der titelleiste (minimieren, maximieren, schließen) von externen programmen
abfangen um zb. ne messagebox mit "ja/nein programm schließen" zwischen zu schalten...
mit pb internen programmen hab ichs schon geschafft:
Code: Alles auswählen
Global Callback.l
Procedure Callback(WindowID, Message, wParam, lParam)
Select Message
Case #WM_SYSCOMMAND
Select wParam
Case #SC_CLOSE
Callback = 1
ProcedureReturn 0
Case #SC_MAXIMIZE
Callback = 2
ProcedureReturn 0
Case #SC_MINIMIZE
Callback = 3
ProcedureReturn 0
EndSelect
EndSelect
ProcedureReturn #PB_ProcessPureBasicEvents
EndProcedure
OpenWindow(0, 0, 0, 320, 240, " test", #PB_Window_SystemMenu | #PB_Window_MinimizeGadget | #PB_Window_MaximizeGadget | #PB_Window_ScreenCentered)
CreateGadgetList(WindowID(0))
TextGadget(1, 10, 10, 150, 14, "")
SetWindowCallback(@Callback(), 0)
Repeat
Event = WaitWindowEvent()
If Callback
Select Callback
Case 1
SetGadgetText(1, "Close Button")
quit = MessageRequester("Info", "Quit program?", #PB_MessageRequester_YesNo)
If quit = #PB_MessageRequester_Yes
exit = 1
Else
Callback = 0
EndIf
Case 2
SetGadgetText(1, "Maximize Button")
Case 3
SetGadgetText(1, "Minimize Button")
Default
Callback = 0
EndSelect
EndIf
Until exit
End
hat jemand von euch schon mal ähnliches versucht und kann mir ev. unter die arme greifen?
danke schonmal, chi
