如何在 ttk 笔记本中切换选项卡时设置变量
How to set a variable while switching tabs in ttk notebook
我想在 tkk:notebook
中设置一个基于选项卡切换的变量值。是否有任何选项可以帮助我实现这一目标?
我想将默认选项卡的标志保持为 0,当用户切换另一个选项卡时将其标记为 1。
这是我的代码,但对我没有帮助:
ttk::notebook .top.d -padding 5
ttk::frame .top.d.f1;
ttk::frame .top.d.f2;
.top.d add .top.d.f2 -text "Tab A" -padding 5
.top.d add .top.d.f1 -text "TAB B" -padding 5
.top.d select .top.d.f1
ttk::notebook::enableTraversal .top.d
if {.top.d select .top.d.f2 } {
set flag 2
}
谢谢
我感觉你是想获取当前标签页的索引,如果是这样,那么你可以使用:
.top.d index current
获取任意时间点tab的索引(索引从0开始)。
但是如果你真的想在标签切换时改变变量的值,你可以使用虚拟事件 <<NotebookTabChanged>>
:
bind .top.d <<NotebookTabChanged>> {
if {[.top.d select] == ".top.d.f2"} {set flag 2}
}
以上所有内容都在manual。
我想在 tkk:notebook
中设置一个基于选项卡切换的变量值。是否有任何选项可以帮助我实现这一目标?
我想将默认选项卡的标志保持为 0,当用户切换另一个选项卡时将其标记为 1。
这是我的代码,但对我没有帮助:
ttk::notebook .top.d -padding 5
ttk::frame .top.d.f1;
ttk::frame .top.d.f2;
.top.d add .top.d.f2 -text "Tab A" -padding 5
.top.d add .top.d.f1 -text "TAB B" -padding 5
.top.d select .top.d.f1
ttk::notebook::enableTraversal .top.d
if {.top.d select .top.d.f2 } {
set flag 2
}
谢谢
我感觉你是想获取当前标签页的索引,如果是这样,那么你可以使用:
.top.d index current
获取任意时间点tab的索引(索引从0开始)。
但是如果你真的想在标签切换时改变变量的值,你可以使用虚拟事件 <<NotebookTabChanged>>
:
bind .top.d <<NotebookTabChanged>> {
if {[.top.d select] == ".top.d.f2"} {set flag 2}
}
以上所有内容都在manual。