我希望显示一个包含几个小部件的框架的边框,但是尽管设置了边框的宽度和凹陷值以释放,但是没有边框显示出来
它在一个空的框架上工作得很好,所以我猜它在一个有孩子的框架上不工作,对吗?
我怎么能做到呢?或者至少在界面的两个区域之间引入分隔
测试代码:
import tkinter as Tk
class Application(Tk.Frame):
def __init__(self, **kwargs):
#Create window
self.root = Tk.Tk()
#Init master frame
Tk.Frame.__init__(self,self.root,width=640, height=480)
self.grid()
#Frame
self.frame_com_ports = COM_Frame(self,borderwidth=5,relief=Tk.GROOVE)
self.frame_com_ports.grid(column=0,row=0,sticky='EW')
#Some other frames here...
class COM_Frame(Tk.Frame):
def __init__(self,parent, **kwargs):
Tk.Frame.__init__(self,parent)
#Widgets
self.txt_ports = Tk.Label(self,text="WIDGET1")
self.txt_ports.grid(column=0,row=0,sticky='EW',pady=3,padx=3)
self.txt_ports = Tk.Label(self,text="WIDGET2")
self.txt_ports.grid(column=0,row=1,sticky='EW',pady=3,padx=3)
if __name__ == "__main__":
app = Application()
app.mainloop()
框架的默认浮雕是tk.FLAT,这意味着框架将与其周围环境融为一体。若要在框架周围放置边框,请将其borderwidth设置为正值,并将其浮雕设置为标准浮雕类型之一。
您正在将borderwidth和relief传递给COM_Frame构造函数,但在调用Frame构造函数时不使用这些值。您需要更改:
。。。对此:
相关问题 更多 >
编程相关推荐