Python实例之wxpython中Frame使用方法
发布时间:2022-10-16 00:09:07
本节为大家分享的例子是wxpython Frame的用法。
例子:
#!/usr/bin/python
# -*- coding: GBK -*-
# simple.py
importwx
app=wx.App()
frame=wx.Frame(None)
frame.Show()
app.MainLoop()
例2,
#!/usr/bin/python
告诉程序 python 解释器的路径,只是在 linux 系统下有用,在 Windows 下写上这行代码不起作用,但是也没问题
# -*- coding: GBK -*-
告诉 python 系统字符编码,这样我们就可以在程序中使用中文汉字了,如果没有这一行就是乱码。Windows 下是 GBK,Linux 下是UTF-8
app = wx.App()
初始化应用程序
frame = wx.Frame(None)
frame.Show()
创建一个 Frame (就是窗体),并显示出来。
app.MainLoop()
应用程序进入消息循环
Frame 其实就是窗体,前面生成窗体时没有给他任何参数,只生成了一个默认的窗体,生成默认窗体的代码:
frame = wx.Frame(None)
其实 wx.Frame 可以传入很多参数,由此来控制生成窗体的样式和行为,现在来看看 Frame构造函数的原型:
__init__(self,Windowparent,intid=-1,Stringtitle=EmptyString,
Pointpos=DefaultPosition,Sizesize=DefaultSize,
longstyle=DEFAULT_FRAME_STYLE,Stringname=FrameNameStr)
参数1:parent
当前窗口的父窗口,如果当前窗口是top-level window的话,则parent=None,如果不是顶层窗口,则它的值为所属frame的名字
参数2:id
窗体编号。如果设置为-1,则系统自动给他分配一个编号。默认为-1.
参数3:title
窗体的标题栏,即Caption。默认为空。
参数4:pos
窗体的位置坐标。默认值为(-1,-1),则窗体的位置由系统决定。
参数5:size
窗体的大小。默认值为(-1,-1),则窗体的大小由系统决定。
参数6:style
窗体样式。默认值为 DEFAULT_FRAME_STYLE
默认样式 DEFAULT_FRAME_STYLE 是下面这些值的复合:
wx.MINIMIZE_BOX|wx.MAXIMIZE_BOX|wx.RESIZE_BORDER|
wx.SYSTEM_MENU|wx.CAPTION|wx.CLOSE_BOX|wx.CLIP_CHILDREN
它包括最小化按钮、最大化按钮、系统菜单、标题栏、关闭按钮、可变大小等等。您也可以根据自己的需求改变样式,具体请参照帮助。
参数7:name
窗体名称。
可以看到,7个参数中6个都有默认值,只有第一个参数 parent 需要设置一下,所以一个最简单的窗体就是:
Python代码 收藏代码
frame=wx.Frame(None)
窗体标题:
Python代码 收藏代码
frame=wx.Frame(None,title="HelloWorld")
位置和大小:
Python代码 收藏代码
frame=wx.Frame(None,title="世界你好",size=(300,150),pos=(200,200))
样式一:只有一个光秃秃的标题栏
Python代码 收藏代码
frame=wx.Frame(None,style=wx.CAPTION)
样式二:只有客户区,没有标题栏,也不能改变大小
Python代码 收藏代码
frame=wx.Frame(None,style=0)
样式三:只有一个关闭按钮,不能改变大小
frame=wx.Frame(None,style=wx.SYSTEM_MENU|wx.CAPTION|wx.CLOSE_BOX)
wx.DEFAULT_FRAME_STYLE :这是每个窗口的缺省风格,包含标题、可调节大小的边框,最大最小化按钮、关闭按钮和系统菜单。
wx.CAPTION :在框架上增加一个标题栏,它显示该框架的标题属性。
wx.CLOSE_BOX :指示系统在框架的标题栏上显示一个关闭框,使用系统默认的位置和样式。
Wx.FRAME_ON_TOP : 置顶窗口
w x.FRAME_SHAP ED :用这个样式创建的框架可以使用SetShape()方法去创建一个非矩形的窗口。
wx.FRAME_TOOL_WINDOW :通过给框架一个比正常更小的标题栏,使框架看起来像一个工具框窗口。在Windows下,使用这个样式创建的框架不会出现在显示所有打开窗口的任务栏上。
wx.MAXIMIZE_BOX :指示系统在框架的标题栏上显示一个最大化框,使用系统默认的位置和样式。
wx.MINIMIZE_BOX :指示系统在框架的标题栏上显示一个最小化框,使用系统默认的位置和样式。
wx.RESIZE_BORDER :给框架增加一个可以改变尺寸的边框。
wx.SIMPLE_BORDER :没有装饰的边框。不能工作在所有平台上。
wx.SYSTEM_MENU :增加系统菜单(带有关闭、移动、改变尺寸等功能)和关闭框到这个窗口。在系统菜单中的改变尺寸和关闭功能的有效性依赖于wx.MAXIMIZE_BOX, wx.MINIMIZE_BOX和wx.CLOSE_BOX样式是否被应用。
wx.FRAME_EX_META :如果时在 MacOS 中,这个属性用于是否显示“金属风格”
wx.FRAME_EX_CONTEXTHELP :是否有联机帮助按钮。
wx.FRAME_FLOAT_ON_PARENT :窗口是否显示在最上层,与 wxSTAY_ON_TOP 不同,它必须有一个父窗口。
frame窗体风格通过style属性来设置,例如:
style=wx.SYSTEM_MENU|wx.MINIMIZE_BOX|wx.CLOSE_BOX|wx.CAPTION
猜你喜欢
- 本文介绍的是关于Python中列表项的推导式与过滤操作的相关内容,分享出来供大家参考学习,下面来一起看看吧:典型代码1:data_list
- 无法打开用户默认数据库,登录失败,其原因是登录帐户的默认数据库被删除。 解决办
- 方案一func md5V(str string) string { h := md5.New() &n
- 本文实例讲述了python实现备份目录的方法。分享给大家供大家参考。具体如下:备份脚本1:#!/usr/bin/python# Filena
- Yum方式安装mysql服务步骤一:首先下载mysql的yum源配置wget http://dev.mysql.com/get/mysql5
- 目录一、CentOS7+MySQL8.0,yum源安装二、登录mysql以及修改密码三、远程登录1.MySQL yum源安装2.安装后,首次
- JavaScript Date.toDateString()方法返回一个Date对象的人类可读形式的日期部分。语法Date.to
- 简介rpc:远程过程调用协议。简单的来说就是客户端可以很方便得远程调用服务端的接口程序,而不用管底层是如何实现的。XML-RPC的全称是XM
- 前言: 上一篇讲了Python排序问题中比较经典的三个方法,(链接:关于Python排
- 因为外贸网站,禁止同行抄袭,所以防止中国ip访问访问,访问的时候有密码提示,这样的代码如何写.请给一个提示.或者有好的代码,请分享下。 &n
- 笔者日积月累了许多精彩、实用的Web特效的制作,这些特效几乎都是比较常用的网页特效。现在我就把这些经过
- 1,创建测试表CREATE TABLE `testsign` ( `userid` int(5) DEFAULT NULL, `user
- 引言“ 这是MySQL系列笔记的第八篇,文章内容均为本人通过实践及查阅资料相关整理所得,可用作新手入门指南,或
- 这篇文章主要是把ASP代码变成组件,开发者不仅是加快了ASP的速度,而且也能保护加密自己的代码,编译asp代码为dll组件我想这个是最好的保
- 如何用python做后端写网页-flask框架 什么是Flask安装flask模块Hello World更深一步:数据绑定后端传入数据从前端
- 前言单例模式(Singleton Pattern),是一种软件设计模式,是类只能实例化一个对象,目的是便于外界的访问,节约系统资源,如果希望
- Kettle中使用JavaScript调用jar包对文件内容进行MD5加密.本文主要知识点:JavaScript调用jar包对文件内容进行M
- 前言Blender 并不是唯一一款允许你为场景编程和自动化任务的3D软件; 随着每一个新版本的推出,Blender 正逐渐成为一个可靠的 C
- Mysql 远程连接配置实现的两种方法大家在公司工作中,经常会遇到mysql数据库存储于某个人的电脑上,大家要想连接mysql服务,装有my
- 目录原理先行实践篇完整代码原理先行作为一个资深的小说爱好者,国内很多小说网站如出一辙,什么 🖊*阁啊等等,大都是 get 请求返回 html