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


Tkinter 带有不同类型的部件,例如 Button、Entry、Frame、Label、Radiobutton、Scrollbar 等。部件是标准的图形用户界面 (GUI) 元素,用于显示信息或帮助用户与系统交互。

在本例中,我们将了解如何从画布、Entry 字段、标签和按钮中去除边框。

步骤 -

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

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

  • 接下来,创建一个画布并使用 **"bd"** 属性设置画布的边框宽度。然后,使用 **"highlightthickness"** 属性定义是否要显示画布边框。如果要去除画布边框,则将其设置为 **"highlightthickness=0"**。

  • 定义另外两个用户自定义函数 **start()** 和 **stop()** 来控制 **infinite_loop**。定义一个全局变量 **"condition"**。在 **start()** 中,将 condition 设置为 True,在 **stop()** 中,将 **condition** 设置为 False。

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

  • 类似地,创建两个标签,并使用 **borderwidth** 属性和 **relief='solid'** 在标签周围显示边框。

  • 接下来,创建两个按钮,并在其中一个按钮中设置 **"borderwidth=0"**。这将去除按钮周围的边框。

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

示例

# Import the required libraries
from tkinter import *

#Create an instance of tkinter frame
root=Tk()

# Set the geometry of frame
root.geometry("700x350")

# Create a canvas widget
canvas= Canvas(root, bd=2, highlightthickness=2)
canvas.pack(side=TOP, padx=10, pady=10)

# Create an 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)

# Create Entry widget without border
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()

输出

执行后,将生成以下输出 -

观察画布部件是否有边框。如果在画布中将属性 **"highlightthickness=0"** 设置为,则它将不再显示周围的边框。

类似地,我们有两个按钮,一个带边框,另一个不带边框。要删除 **button** 部件中的边框,我们使用了参数 **"borderwidth=0"**。

更新于: 2021年10月26日

11K+ 浏览量

开启你的 职业生涯

通过完成课程获得认证

立即开始
广告