python图形界面设计工具,python的图形界面gui编程

本篇文章给大家谈谈python编写图形化界面的工具,以及python图形界面设计工具,希望对各位有所帮助,不要忘了收藏本站喔。

本篇文章给大家谈谈python如何做出图形界面,以及用python做图形用户界面,希望对各位有所帮助,不要忘了收藏本站喔。

一、图形界面编程

图形用户界面(Graphical User Interface,GUI)是用户与程序交互的接口,好的GUI会大大提高用户交互体验,其实就是我们平时使用电脑时,使用鼠标、键盘点击的程序界面python自动化运维系统
Python提供很多创建GUI的程序库,程序员可以选择其中的一个来创建自己的程序界面ai伪原创api,如何用php调用

  • PyGObject: 基于GObject的C函数库提供了内省绑定,这些库支持GTK+3图形界面工具集,因此PyGObject提供了丰富的图形界面组件。
  • PyGTK:基于老版GTK+2的库(C语言)提供绑定,官方网站
  • PyQt:Python编程语言和Qt库(C++GUI应用开放框架)的融合,可跨平台使用
  • PySide:Nokia提供的Qt封装,
  • wxPython:以wxWidgets为基础,在不同平台调用不同的本都组件,以符合平台风格。跨平台GUI库,官方网站

如果读者需要,可以选择任意的GUI库来开发图形界面。如果考虑开发跨平台界面,推荐使用PyQt或wxPython。
本章介绍的GUI库时Tkinter,它是Python自带的GUI库,无需额外下载安装,只要导入tkinter包即可使用。
与其他编程语言的 GUI 工具包相比,Tkinter 编码效率高,能够实现快速开发的目的,非常适合初学者学习。Tkinter 使用纯 Python 语言开发,与 C/C++ 开发的 Qt 框架相比,Tkinter 有自身的局限性,比如性能、功能丰富程度等都不及 Qt,因此它只适合开发一些简单的程序,比如计算器的界面,或者一个简易的聊天窗口等。
学习GUI编程类似于搭建积木的过程,我们也通过这个步骤来讲解:

  1. 了解我们这套积木中都含有哪些积木块(GUI库中包含的组件),都是个什么东西。
  2. 准备一张桌子来作为工作场地(建立程序主窗口)
  3. 将积木拼接在一起(在容器/窗口中对组件布局)
  4. 深入掌握每个积木块的功能和用法(各组件用法,完成工作内容)
    接下来我们将一步一步实现界面编程。

1.1 Tkinter GUI编程组件

其实,Tkinter是一个程序包,里面包含了很多模块,例如Tk、ttk、messagebox等,Tk模块是创建简单界面的主要模块,其中的组件也是继承了object类,下图显示了各组件的继承关系:
在这里插入图片描述
现在我们来了解一下‘积木块’的大体功能,不求完全记住,后面还会有详细讲解。
下表列出了 Tkinter 中常用的 15 个组件:

组件类型 组件名称 组件作用
Button 按钮 点击按钮时触发/执行一些事件(函数)
Canvas 画布 提供绘制图,比如直线、矩形、多边形等
Checkbutton 复选框 多项选择按钮,用于在程序中提供多项选择框
Entry 文本框输入框 用于接收单行文本输入
Frame 框架(容器)控件 定义一个窗体(根窗口也是一个窗体),用于承载其他控件,即作为其他控件的容器
Lable 标签控件 用于显示单行文本或者图片
LableFrame 容器控件 一个简单的容器控件,常用于复杂的窗口布局。
Listbox 列表框控件 以列表的形式显示文本
Menu 菜单控件 菜单组件(下拉菜单和弹出菜单)
Menubutton 菜单按钮控件 用于显示菜单项
Message 信息控件 用于显示多行不可编辑的文本,与 Label控件类似,增加了自动分行的功能
messageBox 消息框控件 定义与用户交互的消息对话框
OptionMenu 选项菜单 下拉菜单
PanedWindow 窗口布局管理组件 为组件提供一个框架,允许用户自己划分窗口空间
Radiobutton 单选框 单项选择按钮,只允许从多个选项中选择一项
Scale 进度条控件 定义一个线性“滑块”用来控制范围,可以设定起始值和结束值,并显示当前位置的精确值
Spinbox 高级输入框 Entry 控件的升级版,可以通过该组件的上、下箭头选择不同的值
Scrollbar 滚动条 默认垂直方向,鼠标拖动改变数值,可以和 Text、Listbox、Canvas等控件配合使用
Text 多行文本框 接收或输出多行文本内容
Toplevel 子窗口 在创建一个独立于主窗口之外的子窗口,位于主窗口的上一层,可作为其他控件的容器

在后续内容中,我们会陆续对上表中涉及的组件(也有称为控件的)进行介绍。当然,除了上述组件外,还有一些高级组件,比如 PanedWindow、messagebox、LableFrame、Spinbox,在后续章节也会讲解。
从上表来看,每个组件都有着各自不同的功能,即使有些组件功能相似,但它们的适用场景也不同。

在 Tkinter 中不同的组件受到各自参数的约束(即参数),所有组件既有相同属性,也有各自独有的属性。本节内容,先对这些组件的共用属性做简单介绍,如下表所示:

属性名称 说明 单位 典型值
background(bg) 背景颜色,参数值可以颜色的十六进制数,或者颜色英文单词 COLOR ‘gray25’或‘#ff4400’
foreground(fg) 前景色,也就是字体的颜色,参数值可以颜色的十六进制数,或者颜色英文单词 COLOR ‘gray25’或‘#ff4400’
activebackground 激活状态时的背景色 color ‘gray25’或‘#ff4400’
activeforeground 激活状态时的前景色 color ‘gray25’或‘#ff4400’
highlightbackground 高亮状态时的背景色 color ‘gray25’或‘#ff4400’
highlightcolor 高亮状态时的前景色 color ‘gray25’或‘#ff4400’
selectbackground 选中状态时的背景色 color ‘gray25’或‘#ff4400’
selecforeground 选中状态时的前景色 color ‘gray25’或‘#ff4400’
disabledforground 禁止状态时的前景色 color ‘gray25’或‘#ff4400’
height 该参数值用来设置组件的高度,文本控件以字符的高度(px,font指定),其他控件则以像素为单位 px或pixel 14
width 用于设置控件的宽度,文本控件以字符的高度(px,font指定),其他控件则以像素为单位 px或pixel 14
borderwidth 定于组件的边框宽度 pixel 2
highlightthickness 高亮状态下周围方形区域宽度 pixel 2
selectborderwidth 选中状态时的边框宽度 pixel 2
relief 定义组件的边框样式 constant FLAT(平的)/RAISED(凸起的)/SUNKEN(凹陷的)/GROOVE(沟槽桩边缘)/RIDGE(脊状边缘)
image 定义显示在组件内的图片文件 address
bitmap 定义显示在组件内的位图文件,受anchor、justify选项影响,同时指定bitmap、text、image时,可能会覆盖低优先级的选项,优先级关系为image>bitmap>text address
text 定义控件的标题文字 str ‘确定’
testcariable 指定显示文本的变量 variable bnText
font 若组件支持设置标题文字,就可以使用此属性来定义,它是一个数组格式的参数 (字体,大小,字体样式) 数组 ‘Helvetica’或(‘Verdana’,8)
anchor 定义组件信息(文本或图片)在窗口内的位置 N(上)、NE(左上角)、E(右)、SE、S、SW、W、NW、CENTER
justify 定义多行文字的对齐方式 constant LEFT/CENTER/RIGHT
padx/pady 定义组件内的文字或者图片与控件边框之间的水平/垂直距离 pixel 12
state 控制组件是否处于可用状态 c
  • 21
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值