button控件

要注意一点,一般都是用panel来装其他的控件,不用panel装也可以,就是会非常丑

下图就是直接把button放到frame里的效果

 

 

完整代码如下,包括按键触发事件的关联

import wx

class ButtonFrame(wx.Frame):
    def __init__(self,parent=None,id=-1):
        wx.Frame.__init__(self,parent,id,title="Button Example",size=(300,100))
        
        # 创建panel存放button
        panel=wx.Panel(self,-1)
        # panel.SetBackgroundColour("Red")
        self.button=wx.Button(panel,-1,"Hello",pos=(50,20))

        # 设置点击触发事件
        self.Bind(wx.EVT_BUTTON,self.OnClick,self.button)

        # 将button置于panel的顶层
        self.button.SetDefault()
        self.flag=0

    def OnClick(self,event):
        if self.flag==0:
            self.button.SetLabel("Clicked")
            self.flag=1
        else:
            self.button.SetLabel("Hello")
            self.flag=0


if __name__=="__main__":
    app=wx.App()
    frame=ButtonFrame()
    frame.Show()
    app.MainLoop()

 

posted @ 2020-12-11 09:55  Wangtn  阅读(265)  评论(0编辑  收藏  举报