Python-02 可视化之tkinter介绍
1 控件介绍
1.1 Label
import tkinter as tk # 使用Tkinter前需要先导入
window = tk.Tk()
window.title('My Window')
window.geometry('500x300') # 长宽 500x300
l = tk.Label(window, text='Hello!this is Tkinter', bg='yellow', font=('Arial', 12), width=30, height=2)
# 说明: bg为背景,font为字体,width为长,height为高,这里的长和高是字符的长和高,比如height=2,就是标签有2个字符这么高
# 放置标签
l.pack() # Label内容content区域放置位置,自动调节尺寸
# 放置lable的方法有:1)l.pack(); 2)l.place();
window.mainloop()
# 注意,loop因为是循环的意思,window.mainloop就会让window不断的刷新,如果没有mainloop,就是一个静态的window,传入进去的值就不会有循环,mainloop就相当于一个很大的while循环,有个while,每点击一次就会更新一次,所以我们必须要有循环
# 所有的窗口文件都必须有类似的mainloop函数,mainloop是窗口文件的关键的关键。
1.2 Button
import tkinter as tk
window = tk.Tk()
window.title('My Window')
window.geometry('500x300')
# 在图形界面上设定标签
var = tk.StringVar() # 将label标签的内容设置为字符类型,用var来接收hit_me函数的传出内容用以显示在标签上
l = tk.Label(window, textvariable=var, bg='green', fg='white', font=('Arial', 12), width=30, height=2)
l.pack()
on_hit = False
def hit_me():
global on_hit
if on_hit == False:
on_hit = True
var.set('you hit me')
else:
on_hit = False
var.set('')
# 在窗口界面设置放置Button按键
b = tk.Button(window, text='hit me', font=('Arial', 12), width=10, height=1, command=hit_me)
b.pack()
# 主窗口循环显示
window.mainloop()
1.3 Entry和Text 示例
1 # Entry 和 Text 输入框 和文本框 2 import tkinter as tk 3 4 window = tk.Tk() 5 window.title("My window") 6 window.geometry("200x200") 7 8 e = tk.Entry(window,show=None) # if "*" will show 密码形式 9 e.pack() 10 11 def insert_point(): 12 var = e.get() 13 t.insert('insert',var) 14 15 def insert_end(): 16 var = e.get() 17 # t.insert('end',var) 18 t.insert(2.2,var) 19 20 b1 = tk.Button(window,text="insert point",width=15, 21 height=2,command=insert_point) 22 b1.pack() 23 24 b2 = tk.Button(window,text="insert end", 25 command=insert_end) 26 b2.pack() 27 28 t = tk.Text(window,height=2) 29 t.pack() 30 31 window.mainloop()
1.4 ListBox
2
测试

浙公网安备 33010602011771号