python基础语法13-GUI编程1

一、简介
Python提供了多个图形开发界面的库,几个常用 Python GUI 库如下:
1.Tkinter模块("Tk 接口")是 Python的标准 Tk GUI工具包的接口 .Tk和 Tkinter可以在大多数的 Unix平台下使用,同样可以应用在 Windows和 Macintosh系统里。Tk8.0的后续版本可以实现本地窗口风格,并良好地运行在绝大多数平台中。
2.wxPython是一款开源软件,是 Python语言的一套优秀的 GUI图形库,允许 Python程序员很方便的创建完整的、功能键全的 GUI 用户界面。
3.Jython程序可以和 Java无缝集成。除了一些标准模块,Jython使用 Java的模块。Jython几乎拥有标准的Python中不依赖于 C语言的全部模块。比如,Jython 的用户界面将使用 Swing,AWT 或者 SWT。Jython 可以被动态或静态地编译成 Java字节码。
4.PyQT Qt是一种开源的 GUI库,适合大型 GUI程序开发,PyQT是 Qt工具包标准的 Python 实现。我们也可以使用 Qt Desginer界面设计器快速开发 GUI 应用程序。
今天主要介绍到的就是Tkinter模块。
二、Tkinter模块
Tkinter是 Python的标准 GUI库。Python使用 Tkinter可以快速的创建 GUI应用程序。由于 Tkinter是内置到 Python的安装包中、只要安装好 Python之后就能 import Tkinter 库、而且IDLE也是用 Tkinter编写而成、对于简单的图形界面 Tkinter还是能应付自如。不过值得注意的是Python3.x 版本使用的库名为 tkinter,即首写字母 T为小写
1.创建GUI程序的基本思路:
导入Tkinter模块
创建控件
指定这个控件的master,即这个控件属于哪一个
告诉GM(geometry manager)有一个控件产生了
示例:
from tkinter import *
from tkinter import messagebox
#送花功能函数
def hua(e):
    messagebox.showinfo('新信息', '送你一朵玫瑰花')
win = Tk()#创建主界面窗口
btn = Button(win)#在主窗口创建按钮
btn['text']='点我就送花'
btn.pack()
btn.bind('<Button-1>', hua)#按钮绑定事件触发的功能函数
win.mainloop()#调用组件的 mainloop方法,进入事件循环
2.GUI编程整体描述
图形用户界面是由一个个组件组成,就像小孩“搭积木”一样最终组成了整个界面。有
的组件还能在里面再放置其他组件,我们称为“容器”。Tkinter的 GUI组件关系图如下:


Misc和Wm:Tkinter的 GUI组件有两个根父类,它们都直接继承了 object类:
Misc是所有组件的根父类;Wm主要提供了一些与窗口管理器通信的功能函数。
Pack、Place、Grid 是布局管理器。布局管理器管理组件的:大小、位置。通过布局管
理器可以将容器中的组件实现合理的排布;
BaseWidget是所有组件的父类;
Widget是所有组件类的父类。Widget一共有四个父类:BaseWidget、Pack、Grid、
Place。意味着,所有 GUI组件同时具备这四个父类的属性和方法。


3.Tkinter常用组件
Toplevel     顶层                容器类,可用于为其他组件提供单独的容器;Toplevel有点类似于窗口
Button       按钮                代表按钮组件
Canvas       画布                 提供绘图功能,包括直线、矩形、椭圆、多边形、位图等
Checkbutton  复选框             可供用户勾选的复选框
Entry        单行输入框      用户可输入内容
Frame        容器                 用于装载其它 GUI 组件
Label        标签                 用于显示不可编辑的文本或图标
LabelFrame   容器                 也是容器组件,类似于 Frame,但它支持添加标题
Listbox      列表框              列出多个选项,供用户选择
Menu         菜单                  菜单组件
Menubutton   菜单按钮           用来包含菜单的按钮(包括下拉式、层叠式等)
OptionMenu   菜单按钮           Menubutton的子类,也代表菜单按钮,可通过按钮打开一个菜单
Message      消息框               类似于标签,但可以显示多行文本;后来当 Label 也能显示多行文本之后,该组件基本处于废弃状态
PanedWindow  分区窗口           该容器会被划分成多个区域,每添加一个组件占一个区域,用户可通过拖动分隔线来改变各区域的大小
Radiobutton  单选钮               可供用户点边的单选钮
Scale        滑动条               拖动滑块可设定起始值和结束值,可显示当前位置的精确值
Spinbox      微调选择器        用户可通过该组件的向上、向下箭头选择不同的值
Scrollbar    滚动条               用于为组件(文本域、画布、列表框、文本框)提供滚动功能
Text         多行文本框        显示多行文本
tkMessageBox 消息框            用于显示你应用程序的消息框
4.标准属性:
标准属性也就是所有控件的共同属性,如大小,字体和颜色等等。
Dimension    控件大小;
Color               控件颜色;
Font               控件字体;
Anchor               锚点;
Relief               控件样式;
Bitmap               位图;
Cursor               光标;
5.几何管理:
Tkinter控件有特定的几何状态管理方法,管理整个控件区域组织,以下是Tkinter公开的几何管理类:包、网格、位置
pack()    包装;
grid()    网格;
place()    位置;

tkinter的详细内容可见官方文档网址:https://docs.python.org/3.7/library/tk.html
三、Tkinter的应用实例:

文本编辑器:  CSDN

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

春风抚微霞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值