在Button上使用StatusBar for Mouse Hover

时间:2015-02-27 19:10:56

标签: python wxpython statusbar

在我的代码中,我创建了StatusBar self.CreateStatusBar()。我可以在MenuItem中使用此状态栏。如下:

enter image description here

如何在Button中使用此状态栏。就像,当我将鼠标悬停在按钮上时,我将使用此statusBar来提供有关该按钮的信息。

1 个答案:

答案 0 :(得分:3)

import wx

class MyFrame(wx.Frame):

    def __init__(self, *args, **kw):
        super(MyFrame, self).__init__(*args, **kw) 
        self.Init()

    def Init(self):   

        panel = wx.Panel(self)
        button = wx.Button(panel, label='Button', pos=(30, 25))     
        button.Bind(wx.EVT_ENTER_WINDOW, self.OnMouseEnter)
        button.Bind(wx.EVT_LEAVE_WINDOW, self.OnMouseLeave)
        self.StatusBar = self.CreateStatusBar()
        self.SetSize((200, 170))
        self.SetTitle('Statusbar...')
        self.Centre()
        self.Show(True)     

    def OnMouseEnter(self, e):  
        self.StatusBar.SetStatusText("Mouse Enter Event...")
        e.Skip()               

    def OnMouseLeave(self, e):
        self.StatusBar.SetStatusText("Mouse Leave Event...")
        e.Skip()   

def Main():

    app = wx.App()
    MyFrame(None)
    app.MainLoop()    

if __name__ == '__main__':
    Main()