文章目录

  • 1、Tkinter概念性知识
  • 2、操作方法
    • 1)、创建一个GUI程序
    • 2)、 简单实例(python3)
    • 3)、实例
    • 4)、相关组件、属性及说明
    • 5)、 grid 布局管理器

1、Tkinter概念性知识

  • Tkinter: Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口 .Tk 和 Tkinter 可以在大多数的 Unix 平台下使用,同样可以应用在 Windows 和 Macintosh 系统里。Tk8.0 的后续版本可以实现本地窗口风格,并良好地运行在绝大多数平台中。
  • Tkinter 是内置到 python 的安装包中、只要安装好 Python 之后就能 import Tkinter 库、而且 IDLE 也是用 Tkinter 编写而成、对于简单的图形界面 Tkinter 还是能应付自如。
  • Tkinter在python2和python3上导入略有不同,在python3中使用的库名为tkinter,故在python3中导入时首字母T也应为小写。

2、操作方法

1)、创建一个GUI程序

  • 1、导入tkinter模块
  • 2、创建控件
  • 3、指定这个控件的master,即控件属于哪一个。
  • 4、告诉GM(geometry manager) 有一个控件产生了。

2)、 简单实例(python3)

import tkinter
top = tkinter.Tk()
# 进入消息循环
top.mainloop()

result:

3)、实例

# Python2.x 导入方法
from Tkinter import *           # 导入 Tkinter 库
# Python3.x 导入方法
#from tkinter import *
root = Tk()                     # 创建窗口对象的背景色# 创建两个列表
li     = ['C','python','php','html','SQL','java']
movie  = ['CSS','jQuery','Bootstrap']
listb  = Listbox(root)          #  创建两个列表组件
listb2 = Listbox(root)
for item in li:                 # 第一个小部件插入数据listb.insert(0,item)for item in movie:              # 第二个小部件插入数据listb2.insert(0,item)listb.pack()                    # 将小部件放置到主窗口中
listb2.pack()
root.mainloop()                 # 进入消息循环

4)、相关组件、属性及说明

参照菜鸟教程:https://www.runoob.com/python/python-gui-tkinter.html

5)、 grid 布局管理器

使用tkinter模块编写图形界面时,经常用到pack()和grid()进行布局管理,pack()参数较少,进行布局时使用简单,但当控件数量较多时,需要用到grid()进行布局,但同一窗口中不要两者同时使用。

grid使用方法和主要参数:

  1. row=x,column=y
    将控件放在x行,y列的位置。注意:
    如果不指定参数,则默认从0开始。
    此处的行号和列号并不是像在坐标轴上一样严格,只是代表一个上下左右的关系,如:
  Label(master, text="First").grid(row=0)Label(master, text="Second").grid(row=1)

和(在行号“1”没有出现的情况下):

  Label(master, text="First").grid(row=0)Label(master, text="Second").grid(row=2)

效果都是一样的:

  1. 单元格大小设置
    |关键字 |方法含义 |
    |–|--|
    | rowspan: | 设置单元格纵向跨越的行数,即控件占据的行数(高度)。 |
    | columnspan:|设置单元格横向跨越的列数,即控件占据的列数(宽度); |
  2. 控件水平和垂直区域空间大小设置
关键字 方法含义
ipadx: 设置控件里面水平方向空白区域大小;
ipady: 设置控件里面垂直方向空白区域大小;
padx: 设置控件周围水平方向空白区域保留大小;
pady: 设置控件周围垂直方向空白区域保留大小;
  1. 控件对其方式设置
    sticky:默认的控件在窗口中的对齐方式是居中。可以使用sticky选项去指定对齐方式,可以选择的值有:
方向值 方向
N 上对齐
S 下对齐
E 左对齐
W 右对齐

可以单独使用N/S/E/W,也可以上下和左右组合使用,达到不同的对齐效果,如:

参数 含义
sticky=N/S/E//W: 顶端对齐/底端对齐/右对齐/左对齐
sticky=N+S: 拉伸高度,使其在水平方向上顶端和底端都对齐
sticky=E+W 拉伸宽度,使其在垂直方向上左边界和右边界都对齐
sticky=N+S+E 拉伸高度,使其在水平方向上对齐,并将控件放在右边(当两个控件放在同一行同一列时效果明显)

:

python GUI-Tkinter编程相关推荐

  1. Python GUI界面编程-初识

    图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面.与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上 ...

  2. Python GUI界面编程初步 02 - Tkinter基础

    前言: 前一篇我们大致介绍了Python编程的几个常用的GUI的工具和库.现在我们开始用其中的几个进行GUI设计. 考虑到,现在有一个项目包括传统的GUI编程,同时客户需要比较完备的图形显示,而这个又 ...

  3. Python GUI界面编程初步 01 - GUI库的特点和选择

    1 Python 的常用GUI库和特点 Tkinter: Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口 .Tk 和 Tkinter 可以在大多数的 Unix ...

  4. Python GUI界面编程初步 04 - Tkinter设计框架和概念

    前言:本节介绍Tk的基本设计思想 本节参考官方介绍文档,所以英文夹杂,这个大家谅解,主要是方便参考: 此外,我们主要以Python语言为基础 1 Widgets(组件) Widgets are all ...

  5. Python GUI界面编程初步 03 - Tkinter基础设计案例

    1 设计: We'll create a simple GUI tool to convert a distance in feet to the equivalent distance in met ...

  6. Python GUI界面编程初步 05- GUI框架PyQt的运用 - 02 PyQt的信号和槽例子

    前言:本节讨论PyQt的事件event和信号signal的应用: 事件和信号是GUI和应用交互的两个重要的概念. 其中,事件用来驱动,信号和槽用来动态链接,这两个东西合并起来适用于各种组合的GUI的触 ...

  7. Python GUI界面编程初步 05- GUI框架PyQt的运用 - 01 PyQt的详细安装和基本使用

    前言: 在01节里面,我们简单的讨论了一下各个GUI框架的优劣.PyQt作为一个传统的GUI的兼容工具,对拖拽来设计GUI的开发来说是极其方便和简单的. 1 简介: PyQt connects the ...

  8. python视窗版_Python GUI tkinter窗口视窗学习3

    Python GUI tkinter窗口视窗学习3 # test9 import tkinter as tk window = tk.Tk() window.title('my test9') win ...

  9. python gui tkinter_Python GUI tkinter 学习笔记(一)

    第一个python程序 #!/usr/bin/python # -*- coding: UTF-8 -*- #在2.x版本上,编写为:from Tkinter import * #在3.x版本上,编写 ...

  10. python可视化计算器_GUI最新:python GUI模拟实现计算器_爱安网 LoveAn.com

    关于"GUI"的最新内容 聚合阅读 这篇文章主要介绍了php7 图形用户界面GUI 开发,结合实例形式分析了PHP7基于php_ui扩展实现的图形用户界面GUI相关操作技巧,需要的 ...

最新文章

  1. mongodb集群——配置服务器放分片meta信息,说明meta里包含了哪些数据信息
  2. Jackcard相似度和余弦相似度(向量空间模型)的java实现
  3. mysql批量插入定时器
  4. opencv鼠标操作,画矩形
  5. SPRING自定义注入CONTROLLER变量
  6. 求一个二维数组外围元素之和_C++数组作为函数的参数(学习笔记:第6章 04)...
  7. bst 删除节点_C ++程序查找具有N个节点的BST数量(加泰罗尼亚编号)
  8. (4)css2.1选择器
  9. 【Spring】Spring 关于 Redis 的序列化器
  10. 设计模式之Flyweight模式(笔记)
  11. 从源码编译安装TensorFlow
  12. 2022年焊工(初级)考试及焊工(初级)考试内容
  13. 快速提取年龄,身份证提取年龄的公式
  14. 计算机专业及课程设置,清华及各大高校公布计算机专业培养方案课程
  15. MATLAB内外插值
  16. Leftist Heaps 习题解
  17. Mac:Permission denied XXX
  18. 使用ros从realsence相机中获取图像
  19. pytorch优化器详解:Adam
  20. RAM,ROM,固态(SSD),硬盘它们间有何关系?

热门文章

  1. 通过js获得input文本框输入的值
  2. Ansible篇-CentOS7安装AWX详解
  3. 郑林楷计算机系姚班,郑林楷很强吗 郑林楷在清华大学读的是什么专业
  4. 4.0高等数学五-积分与路径无关的条件
  5. C语言设计一个简单的计算器,完成两个数的加、减、乘、除、取余。(根据输入的运算符,选择相应的运算,用switch语句实现。
  6. Java代码实现n的阶乘
  7. The 50 Most Essential Pieces of Classical Music
  8. 手机看图app android小众,日常看图 + 收集灵感,这6个APP太好用!
  9. instell-gnu-acct
  10. 【幻灯片制作软件】Focusky教程 | 布局模板