Verfasst: 19.05.2005 08:19
EasyWayToMakeGuiBuilder(In den alten Zeiten mal wahrscheinlich auf der Resourcesite[Das waren noch Zeiten, aber zum Glück gibts noch PureArea.Net] gefunden):
Code: Alles auswählen
If OpenWindow(0, 10, 10, 450, 450, #PB_Window_SystemMenu, "Test")
CreateGadgetList(WindowID())
ButtonGadget(0, 10, 10, 150, 25, "Resize Mode= Off",#PB_Button_Default|#PB_Button_Toggle)
ButtonGadget(1, 200, 100, 120, 25, "Drag Me")
ComboBoxGadget(2,160,60,80,75,"Combobox5")
MessageRequester("Info","Click the gadget that you want to resize and the push the design button",0)
Repeat
EventID = WaitWindowEvent()
Select EventID
Case #PB_EventGadget
Select EventGadgetID()
Case 0
If Selected = 0
Selected = 1
EndIf
Style = GetWindowLong_(GadgetID(Selected),#GWL_STYLE)
If OldStyle <> 0
SetWindowLong_(GadgetID(Selected),#GWL_STYLE,OldStyle)
SetWindowPos_(GadgetID(Selected),0,GadgetX(Selected),GadgetY(Selected),GadgetWidth(Selected),GadgetHeight(Selected),#SWP_SHOWWINDOW)
OldStyle = 0
HideGadget(Selected,1);Neccesary to dissapear the frame of the button (why?)
HideGadget(Selected,0)
SetGadgetText(Selected,"Drag Me")
SetGadgetText(0,"Resize Mode= Off")
SetWindowText_(WindowID(),"Resize Mode: OFF")
Else
OldStyle.l = Style
Style = Style + #WS_THICKFRAME
SetWindowLong_(GadgetID(Selected),#GWL_STYLE,Style)
SetWindowPos_(GadgetID(Selected),0,0,0,0,0,#SWP_NOZORDER | #SWP_NOSIZE | #SWP_NOMOVE | #SWP_DRAWFRAME)
SetGadgetText(Selected,"Resize Me")
SetGadgetText(0,"Resize Mode= On")
SetWindowText_(WindowID(),"Resize Mode: ON")
EndIf
Default
If EventGadgetID() >= 1;Just can resize both controls
Selected.l = EventGadgetID()
Else
Selected = 1
EndIf
EndSelect
Case #WM_MOUSEMOVE
GetCursorPos_(mouse.POINT)
Handle = ChildWindowFromPoint_(WindowID(),mouse\x-5,mouse\y-30);the handle of the gadget that has the mouse over
If Handle = GadgetID(1); Just drag the designeable butto
ReleaseCapture_()
SendMessage_(GadgetID(1), #WM_NCLBUTTONDOWN, #HTCAPTION, 0)
ElseIf Handle = GadgetID(2); Just drag the designeable button
DisableGadget(2,0)
ReleaseCapture_()
SendMessage_(GadgetID(2), #WM_NCLBUTTONDOWN, #HTCAPTION, 0)
EndIf
EndSelect
Until EventID = #PB_EventCloseWindow
EndIf