首页 > 解决方案 > TclTk 图像宽度始终返回零

问题描述

Linux Debian 杰西

我在 TclTk 中创建了一张照片图像。创建后,我想查询实际宽度,以便我可以使用它。我在 MWE 中使用常量 500 时,在实际程序中不太明显。

% puts $tcl_version
8.6
% package require Tk
8.6.2
% set i [image create photo p0 -width 500]
p0
% #not correct
% image width p0
0
% #correct
% p0 cget -width
500

从图像手册页:

图像宽度 名称

返回一个十进制字符串,以像素为单位给出图像名称的宽度。

所以我会期待

image width p0

还返回宽度的十进制值。该cget命令确实返回了我所期望的。

我究竟做错了什么?

标签: imagetclwidthtk

解决方案


尝试:

set i [image create photo p0 -width 500 -height 1]

显然,高度无效的图像没有宽度。


推荐阅读