使用tkinter创建UI界面及动态显示文本

需积分: 5 0 下载量 134 浏览量 更新于2024-08-03 收藏 22KB DOCX 举报
"Tkinter库是Python的标准GUI(图形用户界面)库,用于创建桌面应用程序。在给定的文档中,作者介绍了如何使用Tkinter库创建一个基础的UI界面,并展示了如何添加标签以及处理动态文本。此外,还提到了os和glob模块,它们通常用于文件系统操作和文件路径匹配。" 在Python中,Tkinter库提供了创建用户界面的基本构建块,如窗口、按钮、标签等。首先,我们需要导入Tkinter库,并用别名tk来引用它。在例子中,`import tkinter as tk`引入了Tkinter库。 接着,创建一个Tkinter窗口是通过调用`Tk()`函数完成的,像这样:`window=tk.Tk()`。`window`是一个变量,你可以为它选择任何名称。`window.title()`方法用于设置窗口的标题,而`window.geometry()`则用来指定窗口的尺寸,如`window.geometry('500x300')`定义了一个500像素宽、300像素高的窗口。`window.mainloop()`启动事件循环,使得窗口显示并响应用户的交互。 要在窗口中添加元素,如标签,我们可以使用`tk.Label`类。`Label`对象创建后,需要使用`pack()`或`grid()`方法将其放置在窗口中。例如: ```python l=tk.Label(window, text="请挑选合适图片", bg='blue', font=('Arial', 12), width=15, height=2) l.pack() ``` 这段代码创建了一个蓝色背景的标签,字体为Arial,字号12,宽度可以容纳15个字符,高度为两行。`l.pack()`使得标签在窗口中显示。 如果要显示可变的文本,我们可以使用`StringVar`,这是一个可以存储字符串并允许动态更新的变量。首先,获取用户输入,然后创建一个`StringVar`,设置其初始值,最后在标签中使用`textvariable`参数关联这个变量: ```python a=input() v=tk.StringVar() v.set(a) l=tk.Label(window, textvariable=v, bg='blue', font=('Arial', 32), width=15, height=2) l.pack() ``` 在这里,`a`保存了用户输入的值,`v.set(a)`将这个值设置到`StringVar`中,标签`l`的文本就会随着`v`的变化而变化。 至于`os`和`glob`模块,它们与文件操作有关。`os`模块提供了一系列与操作系统交互的函数,包括读写文件、创建删除目录等。而`glob`模块则用于查找符合特定模式的文件路径名。例如,如果你想找出所有以`.txt`结尾的文件,可以使用`glob.glob('*.txt')`。 结合以上信息,我们可以创建一个简单的UI界面,用户输入文本后,该文本会显示在蓝色背景的标签上,同时可以利用`os`和`glob`处理文件系统操作,如浏览和选择图片。这些基本元素和功能构成了Tkinter应用的基础。

import tkinter import tkinter.messagebox def Button_Click(btn): btn_Label = tkinter.Entry(mainUI) btn_Label.insert(tkinter.END,btn) btn_Label.place(x=45,y=75,width=40,height=20) mainUI = tkinter.Tk() mainUI.title('计算器') mainUI.geometry('300x280') #输入数字的两个文本框 num1_Label = tkinter.Label(mainUI,text='number 1 :',justify=tkinter.LEFT,anchor='e') num1_Label.place(x=25,y=20,width=80,height=30) num2_Label = tkinter.Label(mainUI,text='number 2 :',justify=tkinter.LEFT,anchor='e') num2_Label.place(x=25,y=125,width=80,height=30) num1_Var = tkinter.StringVar(mainUI,value='') num2_Var = tkinter.StringVar(mainUI,value='') num1_Entry = tkinter.Entry(mainUI,width=100,textvariable=num1_Var) num1_Entry.place(x=110,y=25,width=140,height=20) num2_Entry = tkinter.Entry(mainUI,width=100,textvariable=num2_Var) num2_Entry.place(x=110,y=130,width=140,height=20) #创建加减乘除按钮及显示文本框 sum_Button = tkinter.Button(mainUI,text='+',command=lambda :Button_Click('+')) sum_Button.place(x=100,y=75,width=30,height=20) min_Button = tkinter.Button(mainUI,text='-',command=lambda :Button_Click('-')) min_Button.place(x=145,y=75,width=30,height=20) mul_Button = tkinter.Button(mainUI,text='x',command=lambda :Button_Click('x')) mul_Button.place(x=190,y=75,width=30,height=20) div_Button = tkinter.Button(mainUI,text='/',command=lambda :Button_Click('/')) div_Button.place(x=235,y=75,width=30,height=20) #创建结果框以及计算按钮 cal_Label = tkinter.Label(mainUI,text='result :',justify=tkinter.LEFT,anchor='e') cal_Label.place(x=25,y=175,width=80,height=20) cal_Entry = tkinter.Entry(mainUI) cal_Entry.place(x=110,y=175,width=80,height=20) cal_Button = tkinter.Button(mainUI,text='Calculate') cal_Button.place(x=110,y=225,width=80,height=20) mainUI.mainloop()完善此代码中Calculate按钮被按下后进行的计算及输出操作

2023-05-30 上传