gpt4 book ai didi

windows - 如何找到 tk 小部件的逻辑布局?

转载 作者:可可西里 更新时间:2023-11-01 10:19:21 24 4
gpt4 key购买 nike

我正在深入学习 ttk,想知道如何为任何小部件找到逻辑布局。现在只是探索和做小实验。在以下代码中,尝试显示文本,但未记录复选按钮的布局详细信息。所以我的问题是如何轻松地为任何小部件找到它们。


This Ttk style guide确实是很好的引用,但对深入布局没有帮助。谢谢。

ttk::style element create pin vsapi EXPLORERBAR 3 {
{pressed !selected} 3
{active !selected} 2
{pressed selected} 6
{active selected} 5
{selected} 4
{} 1
}
ttk::style layout Explorer.Pin {Explorer.Pin.pin -sticky news}
pack [ttk::checkbutton .pin -style Explorer.Pin]

最佳答案

要查找给定小部件使用的样式,请使用 winfo class命令:

% ttk::checkbutton .b
% winfo class .b
TCheckbutton

然后您可以使用 ttk::style layout 转储布局:(为便于阅读而重新格式化)

% ttk::style layout TCheckbutton
Checkbutton.padding -sticky nswe -children {
Checkbutton.indicator -side left -sticky {}
Checkbutton.focus -side left -sticky w -children {
Checkbutton.label -sticky nswe
}
}

这声明了元素及其放置方式。所以要替换 indicator元素,您可以复制此布局以定义引用新元素的新布局:

% ttk::style layout Pin.TCheckbutton {
Checkbutton.padding -sticky nswe -children {
Checkbutton.pin -side left -sticky {}
Checkbutton.focus -side left -sticky w -children {
Checkbutton.label -sticky nswe
}
}
}
% place [ttk::checkbutton .pin -text text -style Pin.TCheckbutton] -x 10 -y 10

Screenshot of modified checkbutton

你应该注意到一些元素通过 ttk::style configure 获取附加到样式的额外配置。命令,因此在复制样式时,您还应该复制配置:

ttk::style configure $new_stylename {*}[ttk::style configure $old_stylename]

很可能还有小部件状态图 ( ttk::style map )。

读取<Tcl/Tk folder>/library/ttk中的ttk库文件应该展示很多关于这些东西是如何组合在一起的。特别是 vsapi.tcl 文件为 Windows 做了相当多的布局。

关于windows - 如何找到 tk 小部件的逻辑布局?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33161518/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com