python - 使用 Grid 调整窗口大小时调整 Tkinter 列表框的大小

标签 python tkinter

我正在使用 Grid 几何管理器开发 Tkinter 应用程序(这是我第一次使用 Grid,我喜欢它!:D),它包含一个滚动列表框,每当用户选择一个选项时都会显示选项。

它运行良好,但窗口又小又丑。当我最大化它时,其他所有内容都可以很好地调整大小(感谢 columnconfigure)但列表框保持相同的高度。有解决此问题的简单方法吗?

(我见过 this question 但它是用于 Pack,而不是 Grid)

提前致谢。

代码示例,因为有人要求:

self.tasklist = Listbox(self.frame, exportselection=0)
self.tasklist.grid(row=1, sticky=W+E+N+S)
yscroll = Scrollbar(self.frame, command=self.tasklist.yview, orient=VERTICAL)
yscroll.grid(row=1, column=1, sticky=N+S)

最佳答案

没有看到更多你的代码,这是不可能的。很可能您的列表框正在正确扩展,但您的 self.frame 不是。不过,我没有看到您对列表框所在的行和列赋予任何权重,所以这可能是一个因素。

一个简单的调试方法是给 self.frame 一个会突出的花哨颜色(红色、亮绿色等)。然后很容易看出列表框是否在框架内正确调整大小,以及框架是否在其父框架内正确调整大小。

关于python - 使用 Grid 调整窗口大小时调整 Tkinter 列表框的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12127130/

相关文章:

python - 为什么这个简单的 python toast 通知不起作用?

python - 在 Tkinter Canvas 中删除多边形内的区域

python - 单击按钮时程序运行一次,然后什么也不运行

python - Pandas timedelta64[ns] 计算

python - 按条件从字符串中提取数字

python - 如何摧毁这个。 Python 知识库

python - 在 python 中的 tkinter.ttk 中使图像精确居中

Python tkinter Entry() 不向变量返回任何值

python - 在基于类的 ListView 中选择带有复选框的对象

python - __main__.py 中是否需要 "if __name__ == ' __main_ _'"?