I ran into problems where using staticboxes and staticbox sizers conflicts with drag and drop. I was under the impression that the controls are created in back to front Z-order, so items created first are behind later siblings, but It looks like I need to create a static box after the control that recieves the D&D event. For example:
#This doesn't work
oStaticBox = wx.StaticBox(parent, -1, "Title")
oStaticBoxSizer = wx.StaticBoxSizer(oStaticBox, wx.VERTICAL)
oText = wx.TextCtrl(parent, -1 )
oText.SetDropTarget( wx.FileDropTarget() )
oStaticBoxSizer.Add(oText, 1, wx.EXPAND)
#This works
oText = wx.TextCtrl(parent, -1 )
oStaticBox = wx.StaticBox(parent, -1, "Title")
oStaticBoxSizer = wx.StaticBoxSizer(oStaticBox, wx.VERTICAL)
oText.SetDropTarget( wx.FileDropTarget() )
oStaticBoxSizer.Add(oText, 1, wx.EXPAND)
Is this normal? It's a bit couter-intuitive, since it forces you to crewate all the controls first, then the sizer, then add everything to the sizer.