GUI库之认识Tkinter(一)
一、介绍
Tkinter是Python默认的GUI库,我们经常使用的IDLE就是用Tkinter设计出来的,因此我们在使用的时候直接导入Tkinter模块就好了。
1.特点:可移植性、灵活性高
2.构成:Tk + interface = Tkinter
二、第一次体验Tkinter
1.接下来举个例:
import tkinter as tk root = tk.Tk() # 创建一个主窗口,用于容纳整个GUI程序
root.title("YfacesClub") # 设置主窗口对象的标题栏
theLable = tk.Label(root,text = "我的第二个窗口程序") # 生成标签,Lable组件可以显示文本、图标或者图片
theLable.pack() # 将标签添加到主窗口,调用Lable组件的pack()方法,用于自动调节组件自身的尺寸
root.mainloop() # 显示窗口,执行后,程序进入主事件循环
执行程序后,如图:

三、封装成类
举个例子:
class App():
def __init__(self, root):
# 创建一个框架,然后在里面添加一个Button按钮组件
# 框架一般是用于在复杂的布局中起到将组件分组的作用
frame = tk.Frame(root)
frame.pack(side = tk.LEFT, padx=10, pady=10) # 自定义按钮组件的方位
# 创建一个按钮组件,fg是foreground的缩写,就是设置前景色的意思
self.yfaces = tk.Button(frame,text = "打招呼",bg = "red",fg = "blue", command = self.say_hi) # command参数:指定按钮消息的回调函数
self.yfaces.pack(side = tk.LEFT) # 通过修改pack()的side参数来设置LEFT,RIGHT,TOP,TOTTOM的四个方位,默认的设置是side=tkinter.TOP def say_hi(self): print("朋友们好,我是YfacesClub")
# 创建一个toplevel的根窗口,并把它作为参数实例化app对象
root = tk.Tk()
root.title("YfacesClub")
app = App(root)
# 开始主事件循环
root.mainloop()
1.pack()方法--用于自动调节组件自身的尺寸
side参数:组件在主窗口的位置
使用格式:pack(side=tk.LEFT)

LEFT:左对齐
RIGHT:右对齐
TOP:顶部
BOTTOM:底部 padx参数:自定义按钮的偏移位置,x轴间距
pady参数:自定义按钮的偏移位置,y轴间距
2.Button按钮组件
参数:
fg(foreground):设置前景色
bg(background):设置背景色
GUI库之认识Tkinter(一)的更多相关文章
- 使用Python3.6的标准GUI库tkinter快速创建GUI应用程序
Python 提供了多个图形开发界面的库,几个常用 Python GUI 库如下: Tkinter: Tkinter 模块(Tk 接口)是 Python 的标准 Tk GUI 工具包的接口 .Tk 和 ...
- Python:GUI库tkinter(三)
这一章是对前两章的总结: Python:GUI库tkinter(一) Python:GUI库tkinter(二) 前两章是对控件的介绍,第一章可以知道各控件使用时的具体参数,第二章以具体的例子展示了每 ...
- Python:GUI库tkinter(一)
学习自: Python GUI 编程(Tkinter) | 菜鸟教程 TkDocs_官方文档 1.几个常用的Python GUI库 tkinter:Python的标准Tk GUI工具包的接口. wxP ...
- Python GUI库
PyQT不错的,只是要小心,这个东西是GPL的,如果你要写商业程序需要购买商业版授权.另外PyGTK.wxPython都是不错的GUI库.Python自带了一个基于TkInter的GUI库,如果你不想 ...
- Python之GUI的最终选择(Tkinter)
首先,Tkinter是Python默认的GUI库,想IDLE就是用Tkinter设计出来的,因此直接导入Tkinter模块就可以啦 1 import tkinter (1)Tkinter初体验: 1 ...
- GUI的最终选择 Tkinter(一):Tkinter最初体验
EasyGui就是一个简单的文字交互界面模块,从今天开始来开始学习Tkinter Tkinter是Python标准的Gui库,它实际是建立在Tk技术上的,Tk最初是为Tcl(一门工具名语言)所涉及的, ...
- 8个必备的Python GUI库
Python GUI 库有很多,下面给大家罗列常用的几种 GUI 库.下面介绍的这些GUI框架,能满足大部分开发人员的需要,你可以根据自己的需求,选择合适的GUI库. 很多人学习python,不知道从 ...
- 8个免费实用的C++GUI库(转载)
C++标准中并没有包含GUI,这也使得C++开发图形化界面需要依赖于第三方的库.实际上,图形界面恰恰是C++的强项,小到平常使用的各类桌面软件,大到魔兽世界这样的游戏,都是C++擅长的地方.C++ ...
- Python 图形 GUI 库 pyqtgraph
原文 Python 图形 GUI 库 pyqtgraph pyqtgraph 是纯 Python 图形 GUI 库,基于PyQT4 /pyside和NumPy.它主要目的用于在数学/科学/工程中.M ...
随机推荐
- duilib进阶教程 -- TreeView控件的不足 (7)
上一个教程中,虽然播放列表的框架和迅雷一样了,但是字体大小.文字居中还没有解决.如果是刚学duilib,搞定这个可不容易,因为在有了入门教程的指导后,很容易就想到去看[属性列表.XML],但是当你试了 ...
- Ajax简单整理-思维导图
图片和mmap下载地址:http://pan.baidu.com/s/1jGqUpxk
- @Cacheable注解式缓存不起作用的情形
@Cacheable注解式缓存使用的要点:正确的注解式缓存配置,注解对象为spring管理的hean,调用者为另一个对象.有些情形下注解式缓存是不起作用的:同一个bean内部方法调用,子类调用父类中有 ...
- simulation vs emulation
Hardware emulation, the use of special purpose hardware to emulate the behavior of a yet-to-be-built ...
- ERP项目实施记录04
周二做了计划部门的需求调查,提到现有计划(一天计划)的准确率仅有60~70%,每天下来都有30%~40%不能达成. 计划部门提出的需求更多是基于Excel操作思路,要求未来的系统要有更多的" ...
- MySQL使用root用户授权出现错误ERROR 1045 (28000) at line 2: Access denied for user 'root'@'%' (using password: YES)解决办法
参考:https://blog.csdn.net/open_data/article/details/42873827 使用MySQL的root用户登录出现错误提示 ERROR 1045 (28000 ...
- 这些简单实用的Word技巧,你get了吗
快速选中多个对象 如果需要将某些文本设置成相同的格式,我们不需要一个个的设置,只要选中多个文本然后一起设置就可以了. 单击开始——选择编辑——选择——选择格式相似的文本 快速清除所有格式 那么当我们不 ...
- 洛谷P1908 逆序对【递归】
题目:https://www.luogu.org/problemnew/show/P1908 题意:给定一个数组,求逆序对个数. 思路: 是一个很经典的题目了.通过归并排序可以求逆序对个数. 现在有一 ...
- 更换title上的ico
var rurl = "/static/dashboard/img/favicon.ico"; var a = ''; var links = document.getElemen ...
- 用工厂模式解决ASP.NET Core中依赖注入的一个烦恼
这是最近在实际开发中遇到的一个问题,用 asp.net core 开发一个后端 web api ,根据指定的 key 清除 2 台 memcached 服务器上的缓存.背景是我们在进行 .net co ...