Tkinter Label控件
Label 控件用于创建一个显示方块,可以在这个显示方块内放置文字或图片。当用户在 Entry 控件内输入数值时,其值会存储在 tkinter 的 StringVar 类内。可以将 Entry 控件的 textvariable 属性设置成 StringVar 类的实例变量,使用户输入的数值自动显示在 Entry 控件上。
#Label控件
expression = StringVar ()
entry = Entry(frame, textvariable=expression)
entry .pack ()
此方式也适用于 Label 控件上。可以使用 StringVar 类的 set() 方法直接写入 Label 控件要显示的文字。例如:
expression = StringVar ()
Label (frame, textvariable=expression) .pack()
expression.set ("Hello Python")
在窗口内创建一个 3×3 的窗体表格,在每一个窗体内创建一个 Label 控件。在每一个 Label 控件内加载一张图片,其中图片的名称分别为 a0~a8.gif,共 9 张图片。
#创建一个窗体表格
from tkinter import *
win = Tk()
#设置图片文件的路径window路径格式为\\
path = "D:\\python\\ch123"
img =[]
#将9张图片放入一个列表中
for i in range (9) :
img.append (PhotoImage (file=path + "a" + str(i) + ".gif") )
#创建9个窗体
frame=[]
for i in range (3):
for j in range (3):
frame.append (Frame (win, relief=RAISED, borderwidth=1,width=158, height=112) )
#创建9个Label控件
Label (frame[j+i*3],image=img[j+i*3]).pack()
#将窗体编排成3X3的表格
frame[j+i*3] .grid(row=j, column=i)
#开始程序循环
win . mainloop()
保存为 demo.pyw 文件后,直接双击运行该文件,结果如图 1 所示:
图1:程序运行结果
在《
Tkinter Entry控件
》示例代码中,还可以添加清除表达式与文字内容的功能。下面的示例中将新增一个按钮,单击此按钮后,会清除表达式与文字标签的内容。
#优化后的计算器
from tkinter import *
win = Tk()
#创建窗体
frame = Frame (win)
#创建一个计算器
def calc() :
#将用户输入的表达式,计算结果后转换为字符串
result = "= "+ str (eval (expression.get() ) )
#将计算的结果显示在Label widget 上
label.config(text = result)
#清除文本框与文字标签的内容
def clear() :
expression.set ("")
label .config(text = "")
#创建一一个Label控件
label = Label (frame)
#读取用户输入的表达式
expression = StringVar()
#创建一一个 Entry控件,Entry 控件位于窗体的上方
entry = Entry (frame, textvariable=expression)
entry .pack()
#创建一个Button控件.当用户输入完毕后,单击此按钮即计算表达式的结果
button1 = Button(frame, text="等于",command=calc)
button2 = Button(frame, text="清除",command=clear)
#设置Entry控件为焦点所在
entry. focus ()
frame.pack()
#Label控件位于窗体的左方
label .pack (side=LEFT)
#Button控件位于窗体的右方
button1. pack (side=RIGHT)
button2. pack (side=RIGHT)
#开始程序循环
frame.mainloop()
保存 demo2.pyw 文件后,直接双击运行该文件。在打开的窗口文本框中输入需要计算的公式,单击“等于”按钮,即可查看运算结果,如下 2 图所示:
图2:程序运行结果
单击“清除”按钮,即可清除文本框中的表达式和标签的内容,如图 3 所示:
图3:程序运行结果
声明:《Python系列教程》为本站“54笨鸟”官方原创,由国家机构和地方版权局所签发的权威证书所保护。
socket端口被占用的解决方案(2种)
MyBatis缓存
C++模板基本概念及语法
Linux tar打包命令的用法
计算机发展的四个阶段
C语言基数排序(附带源码和解析)
如何让服务器端持续不断地监听客户端的请求?
树的孩子表示法(C语言详解版)
Gateway:Spring Cloud API网关组件(非常详细)
Flask route路由详解
C语言到底能干什么?我列举了8种经典案例
Java语言的5种实际用途
主流C语言开发环境汇总(15款IDE推荐)
C语言的6个冷知识
Python软件包的3种安装方法
C语言判断素数的3种方法
算法描述的5种方法
6种常用Linux文件系统
Java注释的3种方式(小白必看)
C语言的4套标准:C89、C99、C11和C17