答案 0 :(得分:3)
如果wx.Panel有任何可以接受焦点的子窗口小部件,它们会将焦点设置为可以接受焦点的第一个子节点。这意味着wx.Panel通常不会获得焦点,除非你明确地设置它......
如果您需要捕获面板上的点击次数,请将wx.EVT_LEFT_DOWN事件绑定到面板,如下所示:
panelOne.Bind(wx.EVT_LEFT_DOWN,self.doSomething)
我认为您可以使用HitTest来确定您点击的内容,如果有必要的话。哎呀,你可以通过在事件处理程序中做这样的事情找出它是哪个面板:
panel = event.GetEventObject()
panel_id = panel.GetId()
panel_name = panel.GetName()
希望有所帮助!