如何更改图像的imageSource?

问题描述 投票:0回答:3

我在 LiveCode 中有一张图像,我想在按下特定按钮时将其更改为另一张图像。到目前为止,我已经尝试过这个 -

将图像“The_Hangman”的imageSource设置为“/HangMan/1.png”

但是,我收到的错误代码为:

第 n/a 行执行错误(对象:无法设置此属性)

我该如何解决这个问题?

livecode
3个回答
1
投票

ImageSource 指的是嵌入到文本字段中的图像,这不是您想要的。

如果您使用导入的图像,它一点也不直观,但您要更改的属性是文本属性:

set the text of image "abc" to the text of image "xyz"

设置text属性会同时改变指定图像的imageData和alphaData。

如果您使用引用的图像(堆栈外部的图像),请将要更改的图像的 fileName 属性设置为新图像的文件路径。


0
投票

以下是使用外部图像文件的方法:

假设您将图像存储在名为“images”的文件夹中,该文件夹与堆栈文件位于磁盘上的同一位置。

put "hang1.png,hang2.png,hang3.png" into tImgList
put 1 into tCurrImg
set the fileName of image "The_Hangman" to \
   (specialFolderPath("resources") & item tCurrImg of tImgList)

现在只需更改 tCurrImg 的值,您就可以显示您想要的任何外部图像文件。


0
投票

这实际上是一个偶尔发生的错误,我还没有重现它。 设置图像的文件名应该是非常可能的,因为文件名是 livecode 图像的属性。 所以出了问题。 我相当有信心当设置的文件名中包含特殊字符时会触发该错误。

现在来帮助你已经太晚了,但万一其他人也遇到了这个问题。

© www.soinside.com 2019 - 2024. All rights reserved.