A workaround, but not really great
Code: Select all
#win1=0
#win2=1
size=200
Procedure Resize_Window1()
ResizeWindow(#win2, WindowX(#win1), WindowY(#win1), WindowWidth(#win1), WindowHeight(#win1))
SetActiveWindow(#win1)
EndProcedure
Procedure Resize_Window2()
ResizeWindow(#win1, WindowX(#win2), WindowY(#win2), WindowWidth(#win2), WindowHeight(#win2))
SetActiveWindow(#win1)
EndProcedure
OpenWindow(#win1,size,size/2,size,size/2,"Drag and size...",#PB_Window_Tool|#PB_Window_SizeGadget)
OpenWindow(#win2,size,size/2,size,size/2,"Drag and size...",#PB_Window_Tool|#PB_Window_SizeGadget)
SetWindowColor(#win1,#Blue)
win_hWnd1=WindowID(#win1)
win_hWnd2=WindowID(#win2)
SetWindowLongPtr_(win_hWnd2,#GWL_EXSTYLE,GetWindowLongPtr_(win_hWnd2,#GWL_EXSTYLE)|#WS_EX_LAYERED)
SetWindowLongPtr_(win_hWnd1,#GWL_EXSTYLE,GetWindowLongPtr_(win_hWnd1,#GWL_EXSTYLE)|#WS_EX_LAYERED)
SetLayeredWindowAttributes_(win_hWnd1,#Blue,0,#LWA_COLORKEY)
SetLayeredWindowAttributes_(win_hWnd2,0,1,#LWA_ALPHA)
SetActiveWindow(#win1)
StickyWindow(#win1, #True)
BindEvent(#PB_Event_MoveWindow, @Resize_Window1(), #win1)
BindEvent(#PB_Event_SizeWindow, @Resize_Window1(), #win1)
BindEvent(#PB_Event_MoveWindow, @Resize_Window2(), #win2)
BindEvent(#PB_Event_SizeWindow, @Resize_Window2(), #win2)
Repeat : Until WaitWindowEvent()=#PB_Event_CloseWindow
#2
Code: Select all
Procedure SizeWindow()
If StartDrawing(WindowOutput(EventWindow()))
Box(0,0,OutputWidth(), OutputHeight(), #Gray)
RoundBox(8,0,OutputWidth()-16, OutputHeight()-40, 4, 4, #Blue)
StopDrawing()
EndIf
EndProcedure
#win=0
size=200
OpenWindow(#win,size,size/2,size,size/2,"Drag and size...",#PB_Window_Tool|#PB_Window_SizeGadget)
win_hWnd=WindowID(#win)
SetWindowLongPtr_(win_hWnd,#GWL_EXSTYLE,GetWindowLongPtr_(win_hWnd,#GWL_EXSTYLE)|#WS_EX_LAYERED)
SetLayeredWindowAttributes_(win_hWnd,#Blue,0,#LWA_COLORKEY)
BindEvent(#PB_Event_SizeWindow, @SizeWindow(), #win)
PostEvent(#PB_Event_SizeWindow, #win, -1)
Repeat : Until WaitWindowEvent()=#PB_Event_CloseWindow