WxPython 笔记
-
wxPython 需要先下载包 在Windows 和 macOS 环境下:
pip install -U wxPython
-
Hello World
import wx app = wx.App(False) # 创建一个新的app frame = wx.Frame(None,'hello world') # 创建一个窗体 frame.Show() # 窗体显示 app.MainLoop() # 主循环、没有这个会闪退、 这个也是事件绑定的。
一个简单的文件编辑
import wx
class MyFrame(wx.Frame): # wx.Frame 窗体对象
def __init__(self,parent ,title): # 构造函数
wx.Frame.__init__(self,parent,title=title,size=(200,100))# 设置窗体大小
self.control = wx.TextCtrl(self,style = wx.TE_MULTILINE) # 设置文本控制
self.Show(True) # 显示
app = wx.App(False) # 创建一个新的app
frame = MyFrame(None,'hello world') # 创建一个窗体
app.MainLoop() # 主循环、没有这个会闪退、 这个也是事件绑定的。
文本框的事件绑定
import wx
class MyFrame(wx.Frame):
def __init__(self,parent,title):# 构造函数
wx.Frame.__init__(self,parent,title=title,size=(500,480))
self.logger = wx.TextCtrl(self, pos=(300,20), size=(200,300), style=wx.TE_MULTILINE | wx.TE_READONLY) ## 设置一个输出多行文本框、设置只读
self.control = wx.TextCtrl(self,style = wx.TE_MULTILINE,pos =(100,325)) # 设置文本输出控件
self.button =wx.Button(self, label="Save", pos=(200, 325)) # 一个按钮 pos 按钮的位置
self.Bind(wx.wx.EVT_BUTTON, self.onClick,self.button) # 给按钮绑定一个事件 onClick 点击事件调用的方法
def onClick(self,event):
# self 可以获取当前这个类的整体对象 MyFrame %d 表示字符码 对应于event.GetId()
self.logger.AppendText("EvtText %d"%self.control.GetString())