这是我的窗口:
我想将标签中的值尽可能地放置在窗口中。我想把它们放在行的左边和右边。
以下是我正在做的不起作用的事情:
# output frame
self.out_frame = tk.Frame(self)
self.out_frame.grid(row=1, column=0, columnspan=2, sticky="ew", pady=24)
# ...
# take the hexadecimal value for example ->
ttk.Label(self.out_frame, text="Hexadecimal", font=sub_title_font).grid(row=0, column=0, sticky="w")
self.hex_out.set(str(hexnum))
ttk.Label(self.out_frame, textvariable=self.hex_out, font=sub_title_font).grid(row=0, column=1, sticky="e")
ttk.Separator(self.out_frame, orient=tk.HORIZONTAL).grid(row=1, column=0, columnspan=2, sticky="ew", pady=5)
总而言之,我只是将值标签和实际值分别粘贴到每一行的West和East。但是,我不能让父框架(即out_frame
)跨越窗口的整个列空间。
1条答案
按热度按时间tf7tbtn21#
您需要:
self.columnconfigure(0, weight=1)
展开self.out_frame
以水平填充可用空间self.out_frame.columnconfigure(1, weight=1)
展开包含数字的列,以水平填充可用空间更新代码:
结果是: