I guess those controls are intended to mimic a container, but something fishy is going on here
tested with 5.62b1 and 5.31 (x86)


Code: Select all
If OpenWindow(0, 0, 0, 322, 220, "PanelGadget", #WS_OVERLAPPEDWINDOW | #PB_Window_ScreenCentered )
PanelGadget(0, 8, 8, 306, 203)
AddGadgetItem(0, -1, "Panel 1")
ButtonGadget(1, 10, 15, 80, 24,"Button 1")
ButtonGadget(2, 95, 15, 80, 24,"Button 2")
CloseGadgetList()
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIfNope, also on x64!skywalk wrote:Using MS Spy++ with your example code, I do not see the same traffic?
PB v561x64 on Windows 10 Pro x64.
Is this only related to x86?
Code: Select all
CreateWindowExW ( 0, "STATIC", NULL, WS_CHILD, 98, 38, 80, 24, 0x0000000000020694, NULL, 0x0000000140000000, NULL )
DefWindowProcW ( 0x000000000018063e, WM_NCCREATE, 0, 1238000 )
DefWindowProcW ( 0x000000000018063e, WM_NCCALCSIZE, 0, 1238096 )
GetParent ( 0x000000000018063e )
EnableThemeDialogTexture ( 0x0000000000020694, ETDT_ENABLE )
DefWindowProcW ( 0x000000000018063e, WM_MOVE, 0, 2490466 )
CallWindowProcW ( 0x0000000140002bf4, 0x0000000000020694, WM_PARENTNOTIFY, 1, 1574462 )
CallWindowProcW ( 0x000007fefb00ee08, 0x0000000000020694, WM_PARENTNOTIFY, 1, 1574462 )
DefWindowProcW ( 0x0000000000020694, WM_PARENTNOTIFY, 1, 1574462 )
DrawThemeParentBackground ( 0x000000000018063e, 0xffffffffa1011414, NULL )
CallWindowProcW ( 0x0000000140002bf4, 0x0000000000020694, WM_ERASEBKGND, 18446744072115786772, 0 )
CallWindowProcW ( 0x000007fefb00ee08, 0x0000000000020694, WM_ERASEBKGND, 18446744072115786772, 0 )
CallWindowProcW ( 0x0000000140002bf4, 0x0000000000020694, WM_PRINTCLIENT, 18446744072115786772, 4 )
CallWindowProcW ( 0x000007fefb00ee08, 0x0000000000020694, WM_PRINTCLIENT, 18446744072115786772, 4 )
GetClientRect ( 0x0000000000020694, 0x000000000012dcc0 )
DrawThemeParentBackground ( 0x0000000000020694, 0xffffffffa1011414, NULL )
GetPropW ( 0x000000000002069a, "PB_GadgetStack_5368709120" )
GlobalFindAtomW ( "PB_GadgetStack_5368709120" )
CallWindowProcW ( 0x0000000140004e40, 0x000000000002069a, WM_ERASEBKGND, 18446744072115786772, 0 )
GetPropW ( 0x000000000002069a, "PB_WindowID" )
GlobalFindAtomW ( "PB_WindowID" )
GetPropW ( 0x000000000002069a, "PB_MDI_Gadget" )
GlobalFindAtomW ( "PB_MDI_Gadget" )
DefWindowProcW ( 0x000000000002069a, WM_ERASEBKGND, 18446744072115786772, 0 )
GetPropW ( 0x000000000002069a, "PB_GadgetStack_5368709120" )
GlobalFindAtomW ( "PB_GadgetStack_5368709120" )
CallWindowProcW ( 0x0000000140004e40, 0x000000000002069a, WM_PRINTCLIENT, 18446744072115786772, 4 )
GetPropW ( 0x000000000002069a, "PB_WindowID" )
GlobalFindAtomW ( "PB_WindowID" )
GetPropW ( 0x000000000002069a, "PB_MDI_Gadget" )
GlobalFindAtomW ( "PB_MDI_Gadget" )
DefWindowProcW ( 0x000000000002069a, WM_PRINTCLIENT, 18446744072115786772, 4 )
DrawThemeBackground ( 0x0000000000020001, 0xffffffffa1011414, 9, 0, 0x000000000012db90, NULL )
GetFocus ( )
DestroyWindow ( 0x000000000018063e )Code: Select all
If OpenWindow(0, 0, 0, 322, 220, "PanelGadget", #WS_OVERLAPPEDWINDOW | #PB_Window_ScreenCentered )
CreateStatusBar(0, WindowID(0))
PanelGadget(0, 8, 8, 306, 183)
;AddGadgetItem(0, -1, "Panel 1")
;ButtonGadget(1, 10, 15, 80, 24,"Button 1")
;ButtonGadget(2, 95, 15, 80, 24,"Button 2")
CloseGadgetList()
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIfNothing wrong with #WS_OVERLAPPEDWINDOW and the bug has to do with the container of the PanelGadgetDude wrote:Maybe I'm wrong, but didn't Fred saying using unofficial flags like #WS_OVERLAPPEDWINDOW to override the #PB_Window flags are not considered bugs?
Code: Select all
Debug #WS_OVERLAPPEDWINDOW
Debug #PB_Window_SystemMenu|#PB_Window_SizeGadget|#PB_Window_MinimizeGadget|#PB_Window_MaximizeGadgetCode: Select all
If OpenWindow(0, 0, 0, 322, 220, "PanelGadget", #WS_OVERLAPPEDWINDOW | #PB_Window_ScreenCentered )
sb=CreateStatusBar(0, WindowID(0))
PanelGadget(0, 8, 8, 306, 183)
AddGadgetItem(0, -1, "Panel 1")
ButtonGadget(1, 10, 15, 80, 24,"Button 1")
ButtonGadget(2, 95, 15, 80, 24,"Button 2")
CloseGadgetList()
BringWindowToTop_(sb)
Repeat : Until WaitWindowEvent() = #PB_Event_CloseWindow
EndIf