我有一个弹出窗口,这是一个画布,我希望允许用户将其拖出到他们希望的任何大小,但是它可能会崩溃到非常小且无法使用的东西。有没有办法设置画布minsize? (例如喜欢“wm minsize”)希望答案不是将画布“嵌入窗口”。
答案 0 :(得分:1)
画布的自然最小尺寸为1×1。
通常,画布的实际最小大小由几何管理器设置;因为大多数时候你想使用grid
来包含画布(所以你可以正确安排滚动条),设置相关行和列的最小尺寸是关键:
set master .
set canvas .canv
# Go for a minimum size of 400x200
grid columnconfigure $master $canvas -minsize 400
grid rowconfigure $master $canvas -minsize 200
pack
GM不允许您指定最小尺寸;它使用没有该概念的布局模型。 place
可让您直接说出所有内容,但在大多数情况下并没有真正帮助。如果您将画布嵌入另一个小部件(例如,在文本小部件中),则可能还有其他选项。
请注意,您不能实际强制系统遵守您提供的最小尺寸指令。它们只是(非常强大)的暗示。 (您可能还需要查看wm minsize
命令来控制整个顶层窗口的请求大小,但这是独立的;小部件的最小大小不是整个容器的最小大小,尽管它们可以交互。)