当前位置:
首页 > Python基础教程 >
第一版:WXPython的helloWord版本
#导入wx模块
import wx
class MyApp(wx.App):
def OnInit(self): #初始化接口,子类覆盖父类的方法
frame=wx.Frame(parent=None,title="hello wxpython") #新建框架
frame.Show() #显示
return True
app=MyApp() #启动
app.MainLoop() #进入消息循环
第二版:wxPython添加按钮
#导入wx模块
import wx
class MyApp(wx.App):
def OnInit(self): #初始化接口,子类覆盖父类的方法
frame=wx.Frame(parent=None,title="hello wxpython") #新建框架
panel=wx.Panel(frame,-1) #生成面板
button=wx.Button(panel,-1,'hello',pos=(50,50)) #确定按钮位置
frame.Show() #显示
return True
app=MyApp() #启动
app.MainLoop() #进入消息循环
第三版:wxPython添加按钮的监听
#导入wx模块
import wx
class MyApp(wx.App):
def OnInit(self): #初始化接口,子类覆盖父类的方法
frame=wx.Frame(parent=None,title="hello wxpython") #新建框架
panel=wx.Panel(frame,-1) #生成面板
button=wx.Button(panel,-1,'hello',pos=(50,50)) #确定按钮位置
self.button1=button
self.Bind(wx.EVT_BUTTON, #绑定事件,如果是按钮被点击
self.OnButton1, #激发的按钮事件
self.button1) #激发的按钮
frame.Show() #显示
return True
def OnButton1(self,event): #事件的激发函数
self.button1.SetLabel("ni")
app=MyApp() #启动
app.MainLoop() #进入消息循环
第四版:wxPython添加标签和输入框
# 导入wx模块
import wx
class MyApp(wx.App):
def OnInit(self): # 初始化接口,子类覆盖父类的方法
frame = wx.Frame(parent=None, title="hello wxpython") # 新建框架
panel = wx.Panel(frame, -1) # 生成面板
label1=wx.StaticText(panel,-1,"MutilLine",pos=(20,30)) #标签
text1=wx.TextCtrl(panel,-1,pos=(10,30),size=(180,30), #输入框
style=wx.TE_MULTILINE)
button = wx.Button(panel, -1, 'hello', pos=(50, 50)) # 确定按钮位置
frame.Show() # 显示
return True
app = MyApp() # 启动
app.MainLoop() # 进入消息循环
第五版:将事件监听和按钮绑定
# 导入wx模块
import wx
class MyApp(wx.App):
def OnInit(self): # 初始化接口,子类覆盖父类的方法
frame = wx.Frame(parent=None, title="hello wxpython") # 新建框架
panel = wx.Panel(frame, -1) # 生成面板
label1=wx.StaticText(panel,-1,"cmd tools",pos=(10,10)) #标签
text1=wx.TextCtrl(panel,-1,pos=(10,150),size=(180,30), #输入框
style=wx.TE_MULTILINE)
button = wx.Button(panel,-1, 'run', pos=(10, 50)) # 确定按钮位置
self.text1=text1 #方便跨函数调用
self.button1 = button
self.Bind(wx.EVT_BUTTON, # 绑定事件,如果是按钮被点击
self.OnButton1, # 激发的按钮事件
self.button1) # 激发的按钮
frame.Show() # 显示
return True
def OnButton1(self,event): #事件的激发函数
self.button1.SetLabel("ni")
print(self.text1.GetValue()) #获取到输入的信息
app = MyApp() # 启动
app.MainLoop() # 进入消息循环
第六版:wxPython制作一个登录界面
# 导入wx模块
import wx
class MyApp(wx.App):
def OnInit(self): # 初始化接口,子类覆盖父类的方法
frame = wx.Frame(parent=None, title="用户登录") # 新建框架
panel = wx.Panel(frame, -1) # 生成面板
label1=wx.StaticText(panel,-1,"user",pos=(10,10)) #标签
text1=wx.TextCtrl(panel,-1,pos=(80,10),size=(180,30), #输入框
style=wx.TE_MULTILINE)
label2 = wx.StaticText(panel, -1, "password", pos=(10, 60)) # 标签
text2 = wx.TextCtrl(panel, -1, pos=(80, 60), size=(180, 30), # 输入框
style=wx.TE_MULTILINE)
button1 = wx.Button(panel,-1, 'login', pos=(80, 110)) # 确定按钮位置
button2 = wx.Button(panel, -1, 'clear', pos=(180, 110)) # 确定按钮位置
self.text1 = text1 # 方便跨函数调用
self.text2 = text2 # 方便跨函数调用
self.button1 = button1 # 方便跨函数调用
self.button2 = button2 # 方便跨函数调用
self.Bind(wx.EVT_BUTTON, # 绑定事件,如果是按钮被点击
self.login, # 激发的按钮事件
self.button1) # 激发的按钮
self.Bind(wx.EVT_BUTTON, # 绑定事件,如果是按钮被点击
self.clear, # 激发的按钮事件
self.button2) # 激发的按钮
frame.Show() # 显示
return True
#def OnButton1(self,event): #事件的激发函数
#self.button1.SetLabel("ni")
#print(self.text1.GetValue()) #获取到输入的信息
def login(self,event): #事件的激发函数
user = self.text1.GetValue() #获取用户名
password = self.text2.GetValue() #获取密码
if user == "leo" and password == "123456":
wx.MessageBox("OK","info",wx.OK|wx.ICON_INFORMATION)
else:
wx.MessageBox("NO", "info", wx.OK|wx.ICON_INFORMATION)
def clear(self,event):
pass
app = MyApp() # 启动
app.MainLoop() # 进入消息循环
栏目列表
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
SQL SERVER中递归
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
这是目前我见过最好的跨域解决方案!
减少回流与重绘
减少回流与重绘
如何使用KrpanoToolJS在浏览器切图
performance.now() 与 Date.now() 对比
一款纯 JS 实现的轻量化图片编辑器
关于开发 VS Code 插件遇到的 workbench.scm.
前端设计模式——观察者模式
前端设计模式——中介者模式
创建型-原型模式