tkinter - 使用网格几何和屏幕大小根据窗口大小调整小部件大小

标签 tkinter

我想使用网格几何根据窗口大小(最大化或最小化)更改小部件的大小。

示例:

如果创建了一个窗口,并且它的外观在最小化模式下已完成,但在展开时显示了一些空白区域。我想以这种方式展开小部件以填充该空白区域。

如果 LCD 改变了,窗口看起来应该是一样的。它还应该根据不同的 LCD 尺寸来管理它的尺寸 我使用了 grid_rowconfigure 和 grid_columnconfigure 方法,但在我的程序中,我删除了一个框架,然后在该窗口上显示另一个框架......它对第一帧工作正常但对第二帧不起作用,另一个问题是当我将我的 LCD 屏幕换成较小的,在窗口中无法看到小部件,因为它们排列在较大的屏幕上。小部件与窗口的边框重合,一些小部件由于屏幕尺寸而从窗口中消失。

最佳答案

您需要申请 grid_rowconfigure()grid_columnconfigure()分别在您绘制子级 widgets 的父/主 widget 的行和列上。

例子:

假设您在主窗口的第一行和前两列绘制了 2 个按钮。您需要像这样应用上述方法:

    main_window.grid_rowconfigure(0, weight=1) # For row 0
    main_window.grid_columnconfigure(0, weight=1) # For column 0
    main_window.grid_columnconfigure(1, weight=1) # For column 1

父级/主窗口有一个weight网格选项与之关联。此选项默认设置为 0(不扩展以填充空间),它指示如果 master 中有额外空间要填充,行/列应该增长多少。

关于tkinter - 使用网格几何和屏幕大小根据窗口大小调整小部件大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38564649/

相关文章:

python - 如何允许多次打开 tkinter 窗口

python - 每当文本超过可视区域时,如何使文本自动向下滚动?

python - 如何允许 Tkinter 从列表输入生成列表框

python - 使用 PIL 在 Tkinter 中显示动画 GIF

python-3.x - 有没有办法实时更新 tkinter 消息框?

python - 交互式列表框 Tkinter

python - 类型错误 : open() takes 0 positional arguments but 2 were given

Python:TKinter 无法调用 "frame"命令:应用程序已被破坏

python - 如何处理下载的 json 字符串?

python - 我们如何使用循环从数组创建复选按钮并打印所选复选按钮的值?