我有TK应用程序,其中包含几个包含不同小部件的框架。 要隐藏框架(及其内容),我使用 grid remove $ frame “。 如何将TK的尺寸调整到最小化所需的几何尺寸?
grid [ttk::frame .f ] -sticky nwse
grid [ttk::frame .f.f] -sticky nwse
foreach el {a b c d e f} {
grid [label .f.f.$el -text "ELEM $el" ] -sticky nwse
}
update
after 2500
grid remove .f.f
在“网格移除.f.f”之后,在没有标签的情况下放置一个大小的顶层需要什么?
答案 0 :(得分:1)
虽然grid remove
将小部件从网格中移出,但它并没有忘记有关如何放置该小部件的信息(如果您想要将其重新添加到同一位置,偶尔会有用的操作)。要完全忘记它,您应该使用grid forget
删除小部件并删除其布局信息。
答案 1 :(得分:0)
怎么样:
wm geometry $ toplevel {}
此致
岛
答案 2 :(得分:0)
我很惊讶几何$ $ toplevel {}。重绘。大。 但它并没有解决我的问题,但现在了解情况。
如果从网格中移除了toplevelFrame(顶层中的第一个也是唯一一个帧),那么顶层是"空的"而不是重绘。
如果toplevel至少是网格中的小部件/框架我可以删除一个并重绘完成。
在我的例子中.e是一个辅助框架。没有尺寸没有内容。
package require Tk
grid [frame .e ]
grid [frame .f ] -sticky nwse
foreach el {a b c e f g h} {
grid [label .f.$el -text "1ELEM $el" ] -sticky nwse
}
update
after 1000
grid remove .f