Tk Text小部件-获取以行和字符为单位的新大小

时间:2018-11-05 14:46:25

标签: tcl tk

创建“ Tk文本”小部件时,可以将其大小指定为-height-width,以默认字体中的行和字符为单位。

如果稍后调整窗口小部件的大小,我想读取新的大小(以行和字符为单位),但看不到如何。我根本没有更改字体。绑定到<Configure>事件将以%h和%w为单位报告新大小。进行cget -heightcget -width仅报告最初配置的行和字符大小。有没有办法检测行和字符的新大小?

1 个答案:

答案 0 :(得分:2)

您可以采用像素宽度进行估算:

set width [expr {round($pwidth/[font measure TkTextFont 0])}]

高度类似于:

set height [expr {round($pheight/[font metrics TkTextFont -linespace])}]

用实际使用的字体替换TkTextFont