如何在Tkinter中去除小部件的边框?

如何在Tkinter中去除小部件的边框?

Tkinter带有不同类型的小部件,如按钮,输入框,框架,标签,单选按钮,滚动条等。小部件是标准的图形用户界面(GUI)元素,用于显示信息或帮助用户与系统交互。

在此示例中,我们将演示如何从画布,输入字段,标签和按钮中删除边框。

步骤 −

  • 导入所需的库并创建Tkinter框架的实例。

  • 使用 root.geometry 方法设置框架的大小。

  • 接下来,创建Canvas并使用 “bd” 属性设置画布的边框宽度。然后,使用 “highlightthickness” 属性定义是否要显示画布边框。如果要删除画布边框,请设置 “highlightthickness=0”

  • 定义两个用户定义的函数, start()stop() ,以控制 infinite_loop 。定义全局变量 “condition” 。在 start() 内,设置condition=True,在 stop() 内,设置 condition=False

  • 接下来,在Canvas内创建两个Entry字段。使用 borderwidth 属性设置一个Entry字段的边框。

  • 同样地,创建两个标签并使用 borderwidth 属性和 relief=’solid’ 显示标签周围的边框。

  • 接下来,创建两个按钮并设置 “borderwidth=0” 在一个按钮上。这将删除按钮周围的边框。

  • 最后,运行应用程序窗口的 mainloop

示例

# 导入所需的库
from tkinter import *

#创建Tkinter框架的实例
root=Tk()

# 设置框架的大小
root.geometry("700x350")

# 创建Canvas Widget
canvas= Canvas(root, bd=2, highlightthickness=2)
canvas.pack(side=TOP, padx=10, pady=10)

# 创建Entry Widget
text=Entry(canvas, width=50)
text.insert(0, "Widget with border")
text.config(borderwidth=5)
text.pack(side=TOP, padx=10, pady=10)

# 创建无边框的Entry Widget
text=Entry(canvas, width=50)
text.insert(0, "Widget without border")
text.pack(side=TOP, padx=10, pady=10)

label1 = Label(canvas, text="Label with border", borderwidth=2, relief='solid', font="Calibri, 14")
label1.pack(side=BOTTOM, padx=10, pady=10)

label2 = Label(canvas, text="Label without border", borderwidth=0, font="Calibri, 14")
label2.pack(side=BOTTOM, padx=10, pady=10)

button1 = Button(root, text="Standard Button")
button1.pack(side=TOP, padx=10, pady=10)

button2 = Button(root, text="Button without Border", borderwidth=0)
button2.pack(side=TOP, padx=10, pady=10)

root.mainloop()

输出

在执行时,它将产生以下输出 –

如何在Tkinter中去除小部件的边框?

注意,Canvas Widget具有边框。如果在Canvas中设置属性 “highlightthickness=0” ,则它将不再显示周围的边框。

同样地,我们有两个按钮,一个带边框,另一个没有边框。要在 button Widget中删除边框,我们使用了参数 “borderwidth=0”

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程