button控件

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

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

button控件

 

 

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

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()

button控件button控件

 

上一篇:监听器扩展


下一篇:C#界面编程9——panel面板、splitContainer分隔容器、table control