如何在tkinter中制作一个填充其网格位置的文本小部件?

问题描述 投票:0回答:1

[我不熟悉grid_rowconfigure()grid_columnconfigure(),但据我所知,下面的代码应使居中的文本框的两侧都具有空格:

self.grid_rowconfigure((0, 1, 2), weight=1)
self.grid_columnconfigure((0, 1, 2), weight=1)

Box = tk.Text(self, height=2, pady=4)
Box.grid(row=1, column=1)

但是Text小部件是默认宽度。如何使其填充列宽(基于重量)?

我曾考虑过将框架放在网格中,然后将文本框包装在框架中以填充它,但是看起来与此相同。

更新:

我使用了sticky="nsew",这似乎适用于垂直高度,但不适用于水平高度。

修复:在Box中添加了宽度值

工作代码:

self.grid_rowconfigure((0, 1, 2), weight=1)
self.grid_columnconfigure((0, 1, 2), weight=1)

Box = tk.Text(self, height=2, width=2, pady=4)
Box.grid(row=1, column=1, sticky="nsew")
python tkinter
1个回答
1
投票

您需要使用sticky属性来使小部件填充为其分配的空间。

Box.grid(row=1, column=1, sticky=“nsew”)
© www.soinside.com 2019 - 2024. All rights reserved.