如何在表单中显示动画image,控制其大小和持续时间?
我尝试过这样的事情:
private void AnimImage()
{
PicBox.Enabled = true;
PicBox.Visible = true;
System.Threading.Thread.Sleep(5000);
PicBox.Visible = false;
PicBox.Enabled = false;
}
答案 0 :(得分:4)
要在表单上显示动画图像,请执行以下操作:
1.)Drop a PictureBox on your Form.
2.)In the Properties Window of designer,change the image property so it contains the path to your image.
3.)Resize it as per your needs.
就是这样,现在尝试运行项目,如果没有抛出异常,你会在PictureBox中看到你的图像动画。
如果要更改图像,请在项目执行过程中的任何时候使用以下语句;
pictureBox1.Load("Path to a new image");//Assuming you haven't renamed the PictureBox.
此外,如果您想手动完成这些工作,请继续阅读;
private void DisplayImage()
{
PictureBox pictureBox1=new PictureBox();
pictureBox1.Location=new Point(Use appropriate values to place the control);
this.Controls.Add(pictureBox1);
pictureBox1.Load("Path to a image to display");
}
如果您不想显示PictureBox,请将其visible属性设置为false,就像其他用户所说的那样;
pictureBox1.Visible=false;
并将其取回使用以下代码;
pictureBox1.Visible=true;
更新:
要仅显示图像5秒钟,请执行此操作;
Drop a Timer on your Form.
Set its Interval property to 5000 Milliseconds.
Create a new Event for its Tick Event (locate Tick event in Events Window and double click it).
Next modify DisplayImage() so it looks like :
private void DisplayImage()
{
timer1.Start();
PictureBox pictureBox1=new PictureBox();
pictureBox1.Location=new Point(Use appropriate values to place the control);
this.Controls.Add(pictureBox1);
pictureBox1.Load("Path to a image to display");
}
Next define an integer field(outside all functions) named count,like this;
private int count=0;
Now modify timer1_Tick() event so it looks like below;
private void timer1_Tick(object sender, EventArgs e)
{
count++;
if (count == 5)
{
SourcePictureBox.Image = null;
count = 0;
}
}
那应该做的工作。别的,请告诉我。
答案 1 :(得分:1)
在图片框中添加一个图片框并在图片框中添加.gif图片。在加载表单时,将图片框的可见性设置为true。
请确保在加载时启用了图片框,否则Windows窗体中不会出现任何图像动画。
答案 2 :(得分:0)
打开你的表格 在您的解决方案资源管理器中打开您的项目名称,打开属性并右键单击要添加到其中的资源。 拖动.Gif图像并将其设置为启用并保存。
添加一个pictureBox并将图像设置为你的Gif(不是背景图像或它不会工作)不要插入或重置定时器,因此GIF会循环。
添加计时器,将其设置为5000(5秒)并启用它。
双击图片框并输入
pictureBox1.Visible = false; (assuming you have not renamed your picturebox) (NOTE this is a back up encase the timer fails)
返回到您的表单并双击您的计时器,然后添加 pictureBox1.Visible = false; timer1.Stop(); (防止计时器在加载时启动)
一旦时间到了,您的图像就会关闭(如果没有,则只需点击它)
如果你需要你的Gif按钮点击开始 在私有void中已初始化写入其中 添加pictureBox1.Visible = false;
现在添加你的按钮并将以下代码编辑到button1_click
pictureBox1.Visible = true; Timer1.Start(); (这是用于在按钮点击时启动计时器的代码) 在这里输入代码
如果这导致循环错误,即gif不隐藏,只需输入timer.Stop();在picturebox_click。