已获原作者授权. 原系列地址:
简介
Button 控件是一种标准 Tkinter 控件, 用来展现不同样式的按钮. Button 控件被用以和用户交互, 比如按钮被鼠标点击后, 某种操作被启动. 和 Label 控件类似, 按钮可以展示图片或者文字. 不同的是, Label 控件可以指定字体, Button 控件只能使用单一的字体. Button 上的文字可以多行显示.
可以将一个 Python 函数或方法绑定到一个 Button 控件. 这个函数或方法将在按钮被点击时执行.例子
下面的代码定义了两个 Button: 一个用来退出程序, 另一个用来执行某个操作, 比如 在终端打印 "Tkinter is easy to use!" .
from tkinter import *class App: def __init__(self, master): frame = Frame(master) frame.pack() self.button = Button(frame, text="QUIT", fg="red", command=quit) self.button.pack(side=LEFT) self.slogan = Button(frame, text="Hello", command=self.write_slogan) self.slogan.pack(side=LEFT) def write_slogan(self): print("Tkinter is easy to use!")root = Tk()app = App(root)root.mainloop()
上面的代码输出如下窗口:
动态显示Label内容
下面的例子中, Label 控件的内容会自动加1, 直到停止按钮被点击:
import Tkinter as tkcounter = 0 def counter_label(label): counter = 0 def count(): global counter counter += 1 label.config(text=str(counter)) label.after(1000, count) count() root = tk.Tk()root.title("Counting Seconds")label = tk.Label(root, fg="dark green")label.pack()counter_label(label)button = tk.Button(root, text='Stop', width=25, command=root.destroy)button.pack()root.mainloop()
上面的代码输出如下窗口:
全系列:
译者水平有限, 如有疏漏, 欢迎指正. 已获得原作者授权. 原文地址: