如何在 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"**。