当满足特定条件时,我禁用我的图片框和图像冻结,每当它再次运行时,gif重新开始,而不是从它停止的地方再到那里恢复它?
停止图片框:http://prntscr.com/b6gg7a “正在恢复”图片框:http://prntscr.com/b6gglb
答案 0 :(得分:-1)
我相信这确实是一个相当乏味/不太可能与动画GIF表演。
你能做什么/应该做什么IMO如下:
不要将背景变成gif,而是将其分成多个帧(图片)。 设置一个计时器,触发背景以更改为下一个图像。 您可以像启用和禁用图片框一样暂停和恢复该计时器。
您的背景更改功能可能如下所示:
int bgCount = 8; //Amount of frames your background uses
int bgCurrent = 0;
string[] bgImg = {
"bg1.png",
"bg2.png",
"bg3.png",
"bg4.png",
"bg5.png",
"bg6.png",
"bg7.png",
"bg8.png",
};
void changeBG()
{
if(bgCurrent > bgCount-1) //If not displaying the last background image go to the next one
{
bgCurrent++;
imgBox.image = bgImg[bgCurrent];
}else //If displaying the last background image -> Start with the first one
{
bgCurrent = 0;
imgBox.image = bgImg[bgCurrent];
}
}
}
你只需让计时器触发此事件。你只需启动和停止计时器。
旁注:
1 *您可以尝试,而不是更改来源,只需制作8个图像框,然后根据需要调用/显示它们。