image - 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
命令确实返回了我所期望的。
我究竟做错了什么?
解决方案
尝试:
set i [image create photo p0 -width 500 -height 1]
显然,高度无效的图像没有宽度。
推荐阅读
- java - 性能:将字符串值与类别进行比较/切换
- ruby - Ruby 可以识别同一个单词的不同拼写吗?
- google-app-engine - 私有本地网络能否通过 Cloud VPN 访问 GAE Flex?
- c# - Task.WaitAll 死锁
- c# - ASP.NET Core Web API 多个动作具有相同的动作动词但不同的签名
- html - MS Edge 上的拖动事件在 2nd/n 拖动时复制“预览内容”
- c++ - #define 在 C++ 中如何工作
- android - 如何存储登录的用户图像以在抽屉中使用?我已成功存储用户名电子邮件和其他文本信息
- java - JPA:创建自定义 ID 注释
- python - 创建一个革命的表面