Python程序设计课件第11章GUI界面编程.pptx
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《Python程序设计课件第11章GUI界面编程.pptx》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Python 程序设计 课件 11 GUI 界面 编程
- 资源描述:
-
1、 GUI概述与窗口布局概述与窗口布局 基于基于wxPython框架的框架的GUI开发开发第11章 GUI界面编程参考书目Python 程序设计目录 GUI概述与窗口布局概述与窗口布局 基于基于wxPython框架的框架的GUI开发开发这里说明图片内容 GUI概述与窗口布局概述与窗口布局 基于基于wxPython框架的框架的GUI开发开发目录这里说明图片内容 GUI概述与窗口布局1 什么是GUIGUI(Graphical User Interface,图形用户接口)是指用图形方式显示计算机操作的用户界面。图形用户界面一般有以下5个元素组成:组件窗体属性事件方法GUI概述与窗口布局1 什么是GUI
2、Python有许多优秀的GUI工具集,下面介绍Tkinter和wxPython两个GUI工具。Tk图形用户界面工具包标准的Python接口。Tkinter的调用转换成Tcl命令,然后交给Tcl解释器进行解释,实现Python的GUI界面Tkinter 作为优秀的跨平台GUI库 wxWidgets 的Python封装和Python模块的方式提供给用户的。是一款开源软件,并且具有非常优秀的跨平台能力wxPythonGUI概述与窗口布局1 什么是GUIGUI应用程序都是基于窗口的,其程序的流程一般如下:1.1.定义主窗口定义主窗口2.2.创建主窗口创建主窗口3.3.创建主窗口内的组件创建主窗口内的组
3、件4.4.显示主窗口显示主窗口5.5.进入消息接收和处理的循环过程进入消息接收和处理的循环过程GUI程序执行后不会主动退出,都停留在接收消息,根据消息执行相应操作的循环中。GUI概述与窗口布局1 什么是GUIGUI程序的消息处理模型如下:以触摸屏为例,当用户点击触摸屏,首先感知到屏幕上被触摸的XY坐标是操作系统内核空间的触摸屏设备驱动程序,然后设备驱动程序会将用户操作封装成消息传递给GUI程序运行时创建的消息队列,GUI程序在运行过程中需要实时处理队列中的消息,当队列没有消息时,程序将处于停滞状态。GUI概述与窗口布局1 什么是GUIGUI程序的开发,一般分为两部分:在代码中用程序创建窗口及窗
4、口内元素;1 编写消息处理函数对内核空间发来的消息做出响应。2GUI概述与窗口布局3 布局管理器图形用户界面中一般需要放置多种用户组件,比如按钮、输入框、文本框等。布局管理器管理界面中的组件位置和大小的设置。常用的布局管理器如下:不使用任何布局管理器,将控件放在固定的位置绝对位置布局 将控件按照网格方式排列,将容器分成规则矩形块GridLayout(网格布局)默认的对齐方式为居中对齐,布局方式为自左向右排列,当一行排满后自动换行FlowLayout(流式布局)把容器简单的划分为东、西、南、北、中5个区域 每个区域只能加入一个控件BorderLayout(边框布局)GUI概述与窗口布局概述与窗口
5、布局 基于基于wxPython框架的框架的GUI开发开发目录这里说明图片内容 基于wxPython框架的GUI开发1 wxPython框架安装与配置使用pip工具安装wxPython:pip install-U wxPython基于wxPython框架的GUI开发2 利用wx.App子类创建窗体在开始创建应用程序之前,先创建一个没有任何功能的子类。创建和使用一个wx.App子类,需要执行如下4个步骤:定义子类定义子类在定义的子类中写一个在定义的子类中写一个OnInit()OnInit()初始化方法初始化方法在程序的主要部分创建这个类的实例在程序的主要部分创建这个类的实例调用应用程序实例的调用应
6、用程序实例的MainLoop()MainLoop()方法,这个方法将程方法,这个方法将程序的控制权转交给序的控制权转交给wxPthonwxPthon基于wxPython框架的GUI开发2 利用wx.App子类创建窗体【例】利用wx.App子类创建窗体。import wxclass App(wx.App):def OnInit(self):frame=wx.Frame(parent=None,title=人生苦短,我爱Python)frame.Show()return Trueif _name_=_main_:app=App()app.MainLoop()基于wxPython框架的GUI开发4
7、使用wxPython框架创建窗体在GUI中框架通常也称为窗口。框架是一个容器,用户可以将它在屏幕上任意移动,并可对它进行缩放,它通常包含诸如标题栏、菜单等。在在wxPythonwxPython中,中,wx.Framewx.Frame是所有框架的父类。当创建是所有框架的父类。当创建wx.Framewx.Frame的子类的子类时,子类应该调用其父类的构造器时,子类应该调用其父类的构造器wx.Frame._init_()wx.Frame._init_()。wx.Framewx.Frame的构的构造器语法格式如下:造器语法格式如下:wx.Frame(parent,id=-1,title=,pos=wx
8、.DefaultPosition,size=wx.DefaultSize,style=wx.DEFAULT_FRAME_STYLE,name=frame)基于wxPython框架的GUI开发4 使用wxPython框架创建窗体【例】利用【例】利用wx.Frame创建窗体示例。创建窗体示例。import wxclass MyFrame(wx.Frame):def _init_(self,parent,id):wx.Frame._init_(self,parent,id,title=人生苦短,我爱Python,pos=(200,200),size=(400,300)if _name_=_main_
9、:app=wx.App()frame=MyFrame(parent=None,id=-1)frame.Show()app.MainLoop()基于wxPython框架的GUI开发5 wxPython框架中常用的控件1.StaticText文本类创建完窗口以后,会在在窗口上添加的按钮、文本、输入框等控件。创建完窗口以后,会在在窗口上添加的按钮、文本、输入框等控件。wx.StaticText(parent,id,label,pos=wx.DefaultPosition,size=wx.DefaultSize,style=0,name=staticText)在在wxPythonwxPython中,中
10、,绘制纯文本绘制纯文本使用类使用类wx.StaticTextwx.StaticText来完成。使用来完成。使用wx.StaticTextwx.StaticText能够改变文本的对齐方式、字体、颜色等。能够改变文本的对齐方式、字体、颜色等。【例】center=wx.StaticText(panel,-1,白日依山尽,黄河入海流。n欲穷千里目,更上一层楼。,(100,80),(200,200),wx.ALIGN_CENTER)基于wxPython框架的GUI开发5 wxPython框架中常用的控件1.StaticText文本类wx.Font(pointSize,family,style,weigh
展开阅读全文