wxpython图形界面_02_自定义窗口类及事件处理

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() # 进入主事件循环
posted @ 2025-09-22 17:27  Clefairy  阅读(10)  评论(0)    收藏  举报