GUI编程之tkinter

链客,专为开发者而生,有问必答!

此文章来自区块链技术社区,未经允许拒绝转载。
在这里插入图片描述
0. 前言
本文内容为使用Python3的tkinter模块,开发GUI。在阅读本文前,请确保你已经或可能满足以下条件:

电脑中已经安装配置好Python3环境
了解Python3的基础语法,比如导入模块,基础语句,面向对象
学习GUI编程指南:

在这个GUI领域QT横行的年代,依旧有学习tkinter的价值。要学习GUI编程,你大概会经历这样一条路径:

认识tkinter模块,写一个简单GUI程序
认识各种控件、学习布局、使用容器
实战以检验动手能力和想象力
PS:你可能还需要了解一些消息驱动的知识
下面我们进入正式的学习。

  1. 认识Tkinter模块,写一个简单的GUI程序
    import tkinter as tk # 引入tkinter模块,并命名为tk
    win = tk.Tk() # 创建主窗口
    win.mainloop() # 进入消息循环,显示窗口界面
    要是用tkinter,首先引入该模块,为了方便命名为tk。

使用tk的一般套路是,先创建一个主窗口,也就是一个Tk()类, 进行一些列操作之后需,进入消息循环。

现在我们来做点简单的事:

import tkinter as tk # 引入tkinter模块,并命名为tk

win = tk.Tk() # 创建主窗口
win.title(“Hello”) # 标题
win.geometry(“400x400+400+200”) # 大小和位置
text = “Hello, Majesty!” # 要显示的内容
b = tk.Label(win, text=text).pack()

进入消息循环,显示窗口界面

win.mainloop()
你可以将上述代码保存在一个扩展名为pyw的的文件里,这样,这个程序可以双击启动,而且在启动时不会开始命令行(也就是不会弹出小黑框)。体验一下你就知道我在说什么了~

  1. 认识控件
    在上边的代码中我们使用了Label控件,Label控件是Tk最常用的组件之一,可以用来显示文本和图片等。在tkinter中,一共提供了15个控件,下面我们来认识一下它们。

控件名称

描述

Button

按钮控件;在程序中显示按钮。

Canvas

画布控件;在窗口中画图,如线条等元素

Checkbutton

多选框控件;用于在程序中提供多项选择框

Entry

输入控件;用于显示简单的文本内容

Frame

框架控件;在屏幕上定义一个区域,用来作为容纳其他控件的容器

Label

标签控件;可以显示文本和位图

Listbox

列表框控件;在Listbox窗口小部件是用来显示一个字符串列表给用户

Menubutton

菜单按钮控件,由于显示菜单项。

Menu

菜单控件;显示菜单栏,下拉菜单和弹出菜单

Message

消息控件;用来显示多行文本,与label比较类似

Radiobutton

单选按钮控件;显示一个单选的按钮状态

Scale

滑动条控件;显示一个数值刻度,为输出限定范围的数字区间

Scrollbar

滚动条控件,当内容超过可视化区域时使用,如列表框。.

Text

文本控件;用于显示多行文本

Toplevel

容器控件;用来提供一个单独的对话框,和Frame比较类似

除此之外,你可能还需要了解一下上述控件都具有的共同属性,如下表:

标准属性也就是所有控件的共同属性,如大小,字体和颜色等等。

属性

描述

anchor

锚位:定位控件在窗口子内的位置。

background(bg)

背景颜色:用来定义控件的背景颜色

bitmap

位图:定义显示在控件中位图文件

borderwidth

边框宽度:定义控件的边框宽度

command

命令:指定特定的函数

cursor

光标:当鼠标指针经过控件时鼠标指针的类型

font

控件字体:用来定义控件上显示的字体,包括字体,大小,样式

foreground(fg)

前景颜色:定义控件的前景(字体)颜色

height

高度:定义控件的高度

image

图像:定义显示在控件内的图片文件

justify

对齐:定义多行文字标题的排列方式

padx

水平距离:定义控件内文字或图片与控件边框之间的水平距离。

pady

垂直距离&

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值