DELPHI的tImage.picture.loadFromFile的文件名是否存储在某个地方?

时间:2017-10-12 05:21:18

标签: image delphi

我使用

加载图片
myImage.picture.LoadFromFile('myimage.jpg');

它可以包含一个"空头像"或者"真实的图片",所以它始终"完整",我无法测试NIL和/或.empty

我想知道是否有办法做某事

if (myImage.picture.filename = 'empty.jpg') then 
  DO SOMETHING
else
  DO SOMETHING ELSE

当然,我可以创建一个全局变量和/或(哇)派生一个新的tImage类来添加该属性,但我猜它有点太多了。

谢谢

2 个答案:

答案 0 :(得分:4)

不保留图像来源的记录。你需要跟踪这个。

您当然不需要使用全局变量来跟踪此情况。您通常会使用与图像控件相同范围的变量。

答案 1 :(得分:2)

这不是跟踪图像文件名的属性。如果您只是想知道它是头像图像还是指定图像,您可以使用标签属性。 myImage.Tag = 0表示空,myImage.Tag = 1表示指定。

如果项目需要文件名,您可以将其存储为变量,或者如果它是Firemonkey项目,则使用TagString属性。

如果项目是VCL,如果您没有将Hint属性用于实际提示(将ShowHint设置为false以便用户看不到它),则可以使用Hint属性存储文件名。