我希望制作一个可以交替隐藏和显示的框架。问题是Tk没有提供任何隐藏/取消隐藏命令。我使用vtcl,其中有一个“窗口隐藏”选项,它只隐藏顶层窗口。现在我想隐藏一个框架,然后再次显示相同的框架。可以将其视为取消隐藏一个框架并显示另一个框架。我的代码可能如下:
proc show1hide2 { } {
global i top
if {$i == 1} {
unpack $top.frame1
pack $top.frame2
set i 0
} else {
unpack $top.frame2
pack $top.frame1
set i 1
}
}
在这个过程中,
$top.frame1
和$top.frame2
已经填充,并且$i
的值被切换,因此当调用此过程时,$top.frame1
和$top.frame2
会交替显示。我想知道是否存在像unpack
这样的命令可以帮助我做到这一点?顺便说一句,unpack
只是一个想法。
raise
命令(我还没有尝试过)。优点可能是,如果两个框架具有不同的大小并且使用布局管理器(例如grid
),则窗口不会收缩或增长(调整大小):https://dev59.com/NnjZa4cB1Zd3GeqPZAml - R Yoda