It is a matter of redraw issue in your case
Code:
If OpenWindow(0, 0, 0, 800, 600, "MDI Window Bug", #WS_OVERLAPPEDWINDOW )
left = ContainerGadget(#PB_Any, 0, 0, 200, 600, #PB_Container_Flat )
CloseGadgetList()
SetGadgetColor(left, #PB_Gadget_BackColor, #Red )
right = ContainerGadget(#PB_Any, 200, 0, 600, 600, #PB_Container_Flat )
right_sub_up = ContainerGadget(#PB_Any, 0, 0, 600, 100, #PB_Container_Flat )
CloseGadgetList()
SetGadgetColor(right_sub_up, #PB_Gadget_BackColor, #Blue )
right_sub_dn = ContainerGadget(#PB_Any, 0, 100, 600, 500, #PB_Container_Flat )
right_sub_left = ContainerGadget(#PB_Any, 0, 0, 300, 500, #PB_Container_Flat )
CloseGadgetList()
SetGadgetColor(right_sub_left, #PB_Gadget_BackColor, #Green )
right_sub_right = ContainerGadget(#PB_Any, 300, 0, 300, 500, #PB_Container_Flat )
mdi = MDIGadget( #PB_Any, 0, 0, 300, 500, 0, 0, #PB_MDI_BorderLess|#PB_MDI_NoScrollBars )
AddGadgetItem(mdi, 1, "MDI Win", 0, #WS_POPUP )
ListIconGadget(#PB_Any, 0, 0, WindowWidth(1), WindowHeight(1), "Nr", 100, #PB_ListIcon_GridLines )
UseGadgetList( WindowID(0))
CloseGadgetList()
SetGadgetColor(right_sub_right, #PB_Gadget_BackColor, #Yellow )
sp3 = SplitterGadget( #PB_Any, 0, 0, 600, 500, right_sub_left, right_sub_right, #PB_Splitter_Vertical|#PB_Splitter_Separator )
SetGadgetState(sp3, 400)
CloseGadgetList()
sp2 = SplitterGadget( #PB_Any, 0, 0, 600, 600, right_sub_up, right_sub_dn, #PB_Splitter_Separator )
SetGadgetState(sp2, 150)
CloseGadgetList()
sp1 = SplitterGadget(#PB_Any, 0, 0, 800, 600, left, right, #PB_Splitter_Vertical |#PB_Splitter_Separator )
SetGadgetState(sp1, 200)
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
Quit = 1
Case #WM_CLOSE
Case #PB_Event_Gadget
Select EventGadget()
Case sp1,sp2,sp3
RedrawWindow_(GadgetID(mdi),#Null,#Null,#RDW_INVALIDATE|#RDW_UPDATENOW)
EndSelect
EndSelect
Until Quit = 1
EndIf