简单小代码:
#!/usr/bin/python
# -*- coding: GBK -*-
# simple.py
import wx
app = wx.App()
frame = wx.Frame(None)
frame.Show()
app.MainLoop()
#!/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, Window parent, int id=-1, String title=EmptyString,
Point pos=DefaultPosition, Size size=DefaultSize,
long style=DEFAULT_FRAME_STYLE, String name=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 需要设置一下,所以一个最简单的窗体就是:
frame = wx.Frame(None)
窗体标题:
frame = wx.Frame(None,title="Hello World")
位置和大小:
frame = wx.Frame(None,title="世界你好",size=(300,150),pos=(200,200))
样式一:只有一个光秃秃的标题栏
frame = wx.Frame(None,style=wx.CAPTION)
样式二:只有客户区,没有标题栏,也不能改变大小
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
分享到:
相关推荐
本节为大家分享的例子是wxpython Frame的用法。 例子: 复制代码 代码如下:#!/usr/bin/python # -*- coding: GBK -*- # simple.py import wx app = wx.App() frame = wx.Frame(None) frame.Show() app....
下面的2个实例代码是实现wxPython窗体特殊效果演示大家可以研究下 wxPython无边框窗体实现代码如下: import wx class Frame(wx.Frame): def __init__(self):#,pos=(0,0) wx.Frame.__init__(self,None,title = u...
frame 实例,包括menubar,toolbar 实现,还有在item里面加图标。创建dialog等
本文实例讲述了python之wxPython的使用方法,分享给大家供大家参考。具体方法如下: 先来看看效果,这里加载一张图片: 代码如下: #!/usr/bin/env python hello wxPython program import wx class Frame(wx....
本文实例为大家分享了wxpython绘制圆角窗体的具体代码,供大家参考,具体内容如下 # -*- coding:gbk -*- import wx class RCDialog(wx.Dialog): def __init__(self,parent=None,size=wx.DefaultSize): wx.Dialog....
wxPython是Python语言的一套优秀的GUI图形库,允许Python程序员很方便的创建完整的、功能键全的GUI用户界面。 wxPython是作为优秀的跨平台GUI库wxWidgets的Python封装和Python模块的方式提供给用户的。 二、安装 ...
wxPython中文教程入门实例 wx.Window 是一个基类,许多构件从它继承。包括 wx.Frame 构件。可以在所有的子类中使用 wx.Window 的方法。 wxPython的几种方法:* SetTitle( string title ) —— 设置窗口标题。只可...
本文实例讲述了python中wxPython菜单的使用方法,分享给大家供大家参考。具体如下: 先来看看下面这段代码: import wx APP_EXIT=1 #定义一个控件ID class Example(wx.Frame): def __init__(self, parent, id, ...
本文实例为大家分享了wxpython按钮切换界面的具体实现代码,供大家参考,具体内容如下 #-*- coding:utf-8 -*- import wx class TestFrame(wx.Frame): def __init__(self): wx.Frame.__init__(self,None,-1,u'登陆...
本文实例讲述了python通过wxPython打开一个音频文件并播放的方法。分享给大家供大家参考。具体如下: 这段代码片段使用wx.lib.filebrowsebutton.FileBrowseButton控件打开一个wav文件,使用wx.Sound播放 import wx ...
本文实例讲述了wxPython的事件驱动机制,分享给大家供大家参考。具体方法如下: 先来看看如下代码: #!/usr/bin/python # moveevent.py import wx #导入wx库 class MoveEvent(wx.Frame): def __init__(self, ...
本文实例讲述了基于wxpython实现的windows GUI程序。分享给大家供大家参考。具体如下: # using a wx.Frame, wx.MenuBar, wx.Menu, wx.Panel, wx.StaticText, wx.Button, # and a wx.BoxSizer to show a ...
创建一个应用程序实例并进入它的主事件循环 23 1.3 扩展这个最小的空的wxPython程序 24 1.4 创建最终的hello.py程序 26 2、给你的wxPython程序一个稳固的基础 28 2.1 关于所要求的对象我们需要知道些什么? 28 2.2 ...
wxPython是Python语言的一套优秀的GUI图形库。允许Python程序员很方便的创建完整的、功能键全的GUI用户界面。 wxPython是作为优秀的跨平台GUI库wxWidgets的Python封装和Python模块的方式提供给用户的。 只要介绍了...
wxPython是Python语言的一套优秀的GUI图形库。允许Python程序员很方便的创建完整的、功能键全的GUI用户界面。 wxPython是作为优秀的跨平台GUI库wxWidgets的Python封装和Python模块的方式提供给用户的。 实现无边框...
本文实例讲述了Python实现去除代码前行号的方法。分享给大家供大家参考。具体实现方法如下: 复制代码 代码如下:# -*- coding: utf-8 -*- import wx class MainWindow(wx.Frame): def __init__(self, parent, id):...
上次我爬了n多图片,但是浏览的时候有一个问题...以下步骤默认你已经知道如何生成一个自己的frame。 步骤1:浏览目录。 这个功能就是类似于打开“我的电脑”,然后不断地进入文件夹和返回。 通过几种尝试,我决定使用l
本文实例为大家分享了wxPython色环电阻计算器的具体代码,供大家参考,具体内容如下 import wx # 导入wxPython class MyFrame(wx.Frame): def __init__(self,parent,id): wx.Frame.__init__(self, parent, id, ...
本文实例讲述了Python实现的文本编辑器功能。分享给大家供大家参考,具体如下: wxpython实现的文本编辑器 效果如下: 主要功能: 1.编辑保存文本,打开修改文本 2.常用快捷键,复制,粘贴,全选等 3.支持撤销功能 ...