wxPython编程学习笔记(04)wx.Butoon的应用

wx.Butoon
按钮是在GUI中使用率最高的一种组件了,点击按钮触发事件可以说是非常普遍的事了。wx.Button使用起来操作简单。
wx中开关按钮ToggleButton,类似于电灯开关,绑定事件后可以通过
obj = e.GetEventObject()
isPressed = obj.GetValue()
来获取对象的属性,这样就可以知道开关按钮的状态了。
Button的创建与使用
创建
bt = wx.Button(self,label="关闭窗口",)
绑定事件
bt.Bind(wx.EVT_BUTTON, self.onCloseWindow)
然后编写绑定事件的函数方法,这样就可以调用此方法了。
具体代码如下,希望这些短小的代码,能给您带来帮助。
import wx
class HelloFrame(wx.Frame):
def __init__(self, *args, **kw):
#调用父类的创建方法
super(HelloFrame, self).__init__(*args, **kw)
box = wx.BoxSizer(wx.VERTICAL)
bt1 = wx.Button(self,label="关闭窗口",)
bt1.Bind(wx.EVT_BUTTON, self.onCloseWindow)
self.bt2 = wx.ToggleButton(self,label='开关')
self.bt2.Bind(wx.EVT_TOGGLEBUTTON,self.showFlash)
st = wx.TextCtrl(self,value='helloworld',)
box.AddMany([(bt1,0, wx.ALL | wx.EXPAND, 0),(self.bt2,0, wx.ALL | wx.EXPAND, 0),(st,0, wx.ALL | wx.EXPAND | wx.SHAPED, 0)])
self.SetSizer(box)
def onCloseWindow(self,e):
dl = wx.MessageDialog(None,"是否要关闭窗口?","请选择",wx.YES_NO | wx.NO_DEFAULT | wx.ICON_QUESTION)
ret = dl.ShowModal()
if ret == wx.ID_YES:
self.Destroy()
else:
pass
def showFlash(self,e):
obj = e.GetEventObject()
isPressed = obj.GetValue()
if isPressed:
self.bt2.SetLabel("关闭")
else:
self.bt2.SetLabel("打开")
def main():
app = wx.App()
frm = HelloFrame(None, title='wxPython Button',)
frm.Show()#显示窗口
app.MainLoop()#持续更新窗口
if __name__ == '__main__':
main()
本文源码下载:
标签: Python GUI
相关文章
- Python Gui新框架:NiceGui之初体验
- wxPython编程学习笔记(10)wx.FileDialog文件选择框
- wxPython编程学习笔记(09)wx.Python Menu 菜单
- wxPython编程学习笔记(08)wx.ListBox 下拉列表框
- wxPython编程学习笔记(07)wxPython Dialog 弹出对话
- wxPython编程学习笔记(06)wx.ComboBox下拉列表框
- wxPython编程学习笔记(05)单选及多选按钮
- wxPython编程学习笔记(03)wxPython中的事件
- wxPython编程学习笔记(02)wxPython的布局
- wxPython编程学习笔记(01)Frame程序的窗口
- Python TK和Tkinter的GUI编程(10) filedialog 文件目录选择对话框
- Python TK和Tkinter的GUI编程(9) Event 键盘鼠标事件
- Python TK和Tkinter的GUI编程(8) Scalet和Spinbox的简单使用
- Python TK和Tkinter的GUI编程(7) Scrollbar的使用
- Python TK和Tkinter的GUI编程(6) Checkbutton Radiobutton
- Python TK和Tkinter的GUI编程(5) messagebox tk的弹出对话框
- Python TK和Tkinter的GUI编程(4) Entry Text 文本框控件
- Python TK和Tkinter的GUI编程(3) 列表框 Listbox
- Python TK和Tkinter的GUI编程(2)菜单Menu
- Python TK和Tkinter的GUI编程(1)窗口、标签Label、按钮Button