import wx
# 自定义窗口类MyFrame,继承自 wx.Frame
class MyFrame(wx.Frame):
def __init__(self):
super().__init__(None, title='第一个应用程序', size=wx.Size(800, 600), pos=wx.Point(200, 50)) # wx.Point 绝对位置
panel = wx.Panel(parent=self) # 面板 Panel 控件
self.static_text = wx.StaticText(parent=panel, label="单机关闭窗口", pos=wx.Point(10, 10)) # 静态文本 StaticText 控件
b = wx.Button(parent=panel, label='关闭', pos=wx.Point(10, 20)) # 创建按钮 Button 对象
self.Bind(wx.EVT_BUTTON, self.on_click, b) # wx.EVT_BUTTON 属于事件类型,即按钮单击事件; self.on_click是事件处理程序 ;b属于事件源,即按钮对象
def on_click(self, event):
self.static_text.SetLabel('Hello, world!')
app = wx.App() # 创建应用程序对象
# frm = wx.Frame(None, title='第一个应用程序', size=(800, 600), pos=(200, 50))
frm = MyFrame() # 创建窗口对象
frm.Show() # 显示窗口
app.MainLoop() # 进入主事件循环