Python教程5-使用tkinter窗口模块的Button

2021-12-14 12:16:07 浏览数 (1)

作者: zifanwang  发布于2020-05-27

普通的按钮是非常简单易用的。你所需要做的就是指定 Button 的内容(文本、位图或者图片), 并且关联当按钮被按下时应该调用的函数或方法 新建一个python程序写入:

代码语言:javascript复制
from tkinter import *
root = Tk()
def callback():
    print("我被调用了")
b = Button(root, text="执行", command=callback)
b.pack()
root.mainloop()

运行后效果:

点击按钮后就会输出”我被调用了”:

代码语言:javascript复制
Python 3.8.2 (tags/v3.8.2:7b3ab59, Feb 25 2020, 23:03:10) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license()" for more information.
>>> 
====================== RESTART: D:zifanmy fileunit1.py ======================
我被调用了
>>> 

如果一个按钮没有相关联的函数或方法,那么它就形同虚设。 你可能在开发程序的过程中会使用到这样的按钮,在这种情况下,更好的方法是禁用这些按钮:

代码语言:javascript复制
b = Button(root, text="不执行", state="disabled")

如果你没有指定 Label 的大小,那么 Label 的尺寸是正好可以容纳其内容而已。 你可以使用 padx 和 pady 选项在 Button 的内容和边框间添加额外的间距:

代码语言:javascript复制
from tkinter import *
root = Tk()
def callback():
    print("我被调用了")
f = Frame(root, height=64, width=64)
f.pack_propagate(0)
f.pack()
b = Button(f, text="确定", command=callback)
b.pack(fill="both", expand=1)
root.mainloop()

Button 也可以显示多行文本:

代码语言:javascript复制
from tkinter import *
root = Tk()
def callback():
    print("我被调用了")
longtext = """
很长的文字,很长的文字,
很长的文字,很长的文字,
很长的文字,很长的文字,
很长的文字,很长的文字,
很长的文字,很长的文字。
"""
b = Button(root, text=longtext, command=callback)
b.pack(fill="both", expand=1)
root.mainloop()

0 人点赞