Закрыть окно
Различные варианты кода закрытия окна :1.
OpenWindow(0,0,0,200,50,"Close me ?",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
CreateGadgetList(WindowID(0))
ButtonGadget(0,10, 10,100,24,"Закрыть")
Repeat
Event=WaitWindowEvent()
If Event= #PB_Event_Gadget And EventGadget()=0
Break ; Прерываем главный цикл
EndIf
Until Event = #PB_Event_CloseWindow
End
CreateGadgetList(WindowID(0))
ButtonGadget(0,10, 10,100,24,"Закрыть")
Repeat
Event=WaitWindowEvent()
If Event= #PB_Event_Gadget And EventGadget()=0
Break ; Прерываем главный цикл
EndIf
Until Event = #PB_Event_CloseWindow
End
2.
hWnd =OpenWindow(0,0,0,200,50,"Close me ?",#PB_Window_BorderLess )
SetWindowColor(0, $F3C250) ;задаём цвет окна
CreateGadgetList(WindowID(0))
ButtonGadget(0,10, 10,100,24,"Закрыть")
Repeat
Event=WaitWindowEvent()
If Event = #WM_LBUTTONDOWN
SendMessage_(hWnd,#WM_NCLBUTTONDOWN, #HTCAPTION,0)
EndIf
If Event= #PB_Event_Gadget And EventGadget()=0 ; выбор гаджета с индификатором 0
Break ; Прерываем главный цикл
EndIf
ForEver
SetWindowColor(0, $F3C250) ;задаём цвет окна
CreateGadgetList(WindowID(0))
ButtonGadget(0,10, 10,100,24,"Закрыть")
Repeat
Event=WaitWindowEvent()
If Event = #WM_LBUTTONDOWN
SendMessage_(hWnd,#WM_NCLBUTTONDOWN, #HTCAPTION,0)
EndIf
If Event= #PB_Event_Gadget And EventGadget()=0 ; выбор гаджета с индификатором 0
Break ; Прерываем главный цикл
EndIf
ForEver
Второй вариант отличается от первого отсутствием системной рамки, системной кнопки "закрыть" и возможность перетягивания мышкой.
3.
OpenWindow(0,0,0,200,50,"Close me ?",#PB_Window_SystemMenu|#PB_Window_ScreenCentered)
CreateGadgetList(WindowID(0))
ButtonGadget(0,10, 10,100,24,"Закрыть")
Repeat
Event=WaitWindowEvent()
If Event = #WM_LBUTTONDOWN
SendMessage_(hWnd,#WM_NCLBUTTONDOWN, #HTCAPTION,0)
EndIf
If Event= #PB_Event_Gadget And EventGadget()=0 ; выбор гаджета с индификатором 0
Break ; Прерываем главный цикл
EndIf
If event=#PB_Event_CloseWindow
MessageRequester("","Не закрывается, заржавела кнопка")
EndIf
ForEver
CreateGadgetList(WindowID(0))
ButtonGadget(0,10, 10,100,24,"Закрыть")
Repeat
Event=WaitWindowEvent()
If Event = #WM_LBUTTONDOWN
SendMessage_(hWnd,#WM_NCLBUTTONDOWN, #HTCAPTION,0)
EndIf
If Event= #PB_Event_Gadget And EventGadget()=0 ; выбор гаджета с индификатором 0
Break ; Прерываем главный цикл
EndIf
If event=#PB_Event_CloseWindow
MessageRequester("","Не закрывается, заржавела кнопка")
EndIf
ForEver
При нажатии на системную кнопку, всплывает окно сообщение....