1.1 创建一个wxPython应用
来源:互联网 发布:怎么屏蔽网络监控 编辑:程序博客网 时间:2024/04/28 00:37
Ch1 Starting with wxPython
1.1 创建一个wxPython应用
App对象必须在所有wxPython应用和GUI对象构造前构造。App对象创建应用程序和提供用于分发事件和连接UI行为的主事件循环
这一章会介绍怎么创建一个最小的wxPython应用,这个应用会作为基础用于后面的所有章节
怎么做
import wxclass MyApp(wx.App): def OnInit(self): wx.MessageBox("Hello wxPython", "wxApp") return Trueif __name__ == "__main__": app = MyApp(False) app.MainLoop()
运行结果
它是怎么工作的
我们写了什么:
1. 构造了一个wx.App的子类
2. 复写了OnInit方法
3. 调用app的MainLoop方法
- 当app启动的时候,OnInit方法会被app的MainLoop方法调用并提供了一个入口去启动主逻辑和UI。在这个例子里,我们只用该方法去展示一个普通的消息弹出框。
- app的MainLoop方法会持续运行直到与该app关联的最后一个窗口关闭。
- OnInit方法一定要return True为了保证MainLoop的初始化成功
- MainLoop方法处理和分发所有需要显示UI和按钮点击动作信息
- 当对话框中OK按钮被点击的时候,他会发送一个被MainLoop方法发送用来关闭对话框的消息。在这个例子里,当对话框被关闭(returned),OnInit也会返回(return),这时候没有存在window对象。所以,app的MainLoop方法也会返回,这段代码就结束了
更多
虽然我们的wx.App对象以例子中的形式创建出来的,但是该类的构造还有4个可选的参数用来修改该对象的一些行为
wx.App(redirect=False, filename=None, useBestVisual=False, clearSigInt=True)
- redirect: 如果为True,stdout会重定向到一个调试窗口
- filename: 如果redirect为True而该参数非空,stdout就会重定向到该参数指的文件
- useBestVisual: 该应用是否尝试使用潜在工具包(underlying toolkit)提供的最好视觉效果(这个在大多系统上没有效果 - -…..)
- clearSigInt:如果为True,则允许在命令行中输入Ctrl+C终止进程
0 0
- 1.1 创建一个wxPython应用
- 【wxPython】wxPython创建一个简单的记事本
- wxPython-创建一个最小的空的wxPython程序
- 使用wxPython开发一个简单GUI应用
- wxPython 一个很好的窗口、菜单创建例子
- wxpython 创建窗口菜单
- wxpython 添加一个button
- 创建一个AppCan应用
- nodejs创建一个应用
- 创建一个SpringBoot应用
- wxpython 使用 XRCed创建界面
- wxpython最小化图标的创建
- 一个菜单示例分析(wxPython)
- 一个WXPython+采集的 Demo
- wxPython一个简单文本编辑器
- wxPython的一个简单例子
- 快速创建一个FaceBook应用
- Maven创建一个web应用
- 模拟赛 红蓝牌
- 浅谈在chrome中“google search”与“输入URL”的区别
- Android Studio之解析Gradle
- CSS入门笔记2
- Atitit 数据库视图与表的wrap与层级查询规范
- 1.1 创建一个wxPython应用
- 三.MUI
- 利用IDA对dex文件进行动态调试过程
- 李白打酒
- 洛谷 P1462 通往奥格瑞玛的道路
- ubuntu中使用pyenv包管理器
- Java中的Properties
- 不能将 "const char *" 类型的值分配到 "LPCWSTR" 类型的实体 错误解决方法
- 算法设计与结构基础作业第五周