`
天梯梦
  • 浏览: 13731710 次
  • 性别: Icon_minigender_2
  • 来自: 洛杉矶
社区版块
存档分类
最新评论

Python实例讲解 -- 认识wxpython 的 Frame

阅读更多

简单小代码:

 

#!/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
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    wxPython2.8-win64-unicode-2.8.12.1-py27安装文件

    wxPython是Python编程语言的一个GUI(图形用户界面)工具包,它允许开发者使用Python编写具有原生外观和感觉的应用程序。wxPython是基于C++的wxWidgets库构建的,提供了丰富的控件集和强大的功能,使得Python程序员...

    Python通过GUI图形库wxPython连接oracle数据库实现系统登录、跳转主界面功能(源代码下载)

    在本项目中,我们主要探讨如何使用Python编程语言结合GUI图形库wxPython来构建一个应用程序,该程序能够连接到Oracle数据库并实现用户登录验证。一旦验证成功,程序将跳转到主界面。以下是对这些关键知识点的详细...

    Python实例之wxpython中Frame使用方法

    本节为大家分享的例子是wxpython Frame的用法。 例子: 复制代码 代码如下:#!/usr/bin/python # -*- coding: GBK -*- # simple.py import wx app = wx.App() frame = wx.Frame(None) frame.Show() app....

    wxPython实现Frame界面的跳转

    在Python的GUI编程中,wxPython是一个非常流行的库,它提供了丰富的组件和工具来创建桌面应用程序。本教程将深入探讨如何使用wxPython实现Frame界面的跳转,特别关注登录页面的功能实现。 首先,理解Frame是...

    python用WxPython库实现无边框窗体和透明窗体实现方法详解

    WxPython是一个强大的库,它为Python提供了一种跨平台的方式来创建GUI应用程序。这个库是基于C++实现的wxWidgets库的Python封装,支持多种操作系统,包括Windows、Linux和macOS。 在标题和描述中提到的两个实例,...

    python frame实例

    frame 实例,包括menubar,toolbar 实现,还有在item里面加图标。创建dialog等

    [gui]Tkinter编程实例(python3.2)(源码)

    本资源提供了Tkinter编程的实例源码,适用于Python 3.2版本,是学习和掌握Tkinter界面开发的重要参考资料。 在Python中,Tkinter库允许开发者创建各种窗口小部件,如按钮、文本框、菜单等,用于构建功能丰富的用户...

    wxpython的一些实例

    通过研究这些实例,你可以深入理解WxPython的工作原理,学习到如何创建高效、用户友好的Python GUI应用。每个实例都是一个学习的宝贵资源,可以帮助你掌握各种技巧和最佳实践,从而在Python界面开发领域提升自己的...

    python3+wxpython编程教程

    本教程旨在指导读者通过Python 3和wxPython库来学习图形用户界面(GUI)的编程基础。wxPython是一个开源的Python扩展库,基于wxWidgets C++库,它为Python提供了丰富的GUI组件,让开发者能够创建丰富的桌面应用程序。...

    python窗口应用:wxpython超快速入门教程.pdf

    Python 窗口应用主要涉及的是图形用户界面(GUI)的开发,而wxPython是Python中广泛使用的GUI库之一,因其结构清晰、内容适中而备受青睐。在Python中,我们通常通过创建类来构建GUI应用程序,这些类会继承自wxPython...

    Python自动办公实例-Python制作图形用户界面(GUI)让操作可视化.zip

    Python中有多个库可以用于构建GUI,如Tkinter(Python标准库的一部分)、PyQt、wxPython和Kivy等。在这个实例中,我们可能会重点学习Tkinter,因为它是内置的,无需额外安装即可使用。Tkinter提供了各种组件,如...

    wxpython中文版

    - 创建wxPython应用程序实例,定义初始化方法。 - 进入应用程序的主事件循环。 - **wx.App子类的创建与省略**:根据程序需求,可能需要创建wx.App的子类,但某些简单程序可以省略这一步骤。 - **应用程序对象的...

    python之wxPython应用实例

    本文实例讲述了python之wxPython的使用方法,分享给大家供大家参考。具体方法如下: 先来看看效果,这里加载一张图片: 代码如下: #!/usr/bin/env python hello wxPython program import wx class Frame(wx....

    wxpython 设计日历控件.rar

    在Python的GUI编程中,wxPython是一个非常流行的库,它为开发者提供了丰富的界面组件和工具,使得创建桌面应用程序变得简单。本项目聚焦于利用wxPython设计一个日历控件,这个控件允许用户选择日期,并能打印所选...

    python图形开发GUI库wxpython使用方法详解

    ### Python 图形开发 GUI 库 wxPython 使用方法详解 #### 一、Python GUI 模块简介 在Python中,有多种图形用户界面(GUI)库可供选择。这些库可以帮助开发者快速构建具有用户友好界面的应用程序。以下是一些常用的...

    wxpython实战

    - **wxPython简介:** wxPython是一个用于Python的GUI开发工具包,它基于wxWidgets C++库,提供了丰富的组件来创建跨平台的应用程序。 - **目标读者:** 本书适合对Python GUI开发感兴趣的初学者以及具有一定经验的...

    wxpython-in-action-zh.pdf

    - 创建最小的空的wxPython程序:这是入门wxPython的简单示例,通过创建wx.App的子类,定义初始化方法,创建应用程序实例并进入主事件循环来构建一个基本的wxPython程序。 - 扩展最小程序和创建hello.py程序:这...

    wxpython python开发图形界面

    **wxPython:Python中的GUI开发库** `wxPython` 是一个强大的Python库,用于构建图形用户界面(GUI)。它提供了丰富的控件集和高度可定制的组件,使得开发者能够使用Python语言来创建功能丰富的桌面应用程序,同时...

    Part1 wxPython入门

    - 定义一个框架类(通常继承自`wx.Frame`),并在应用程序的构造函数中实例化该框架。 - 在`__init__`方法中调用`super().__init__(None)`来初始化父类。 - 使用`app.MainLoop()`启动应用程序的主事件循环。 ###...

Global site tag (gtag.js) - Google Analytics