نوشته شده توسط
sanaz_k
من میخوام وقتی روی pictureBox کلیک میکنم اول یک عکس نمایش پیدا کنه بعد از چند ثانیه یک عکس دیگه !
حالا این کد چرا این کارو نمیکنه عکس اولو نشون نمیده بعد از 1000 میلی ثانیه عکس دوم رو نشون میده!
private void pictureBox1_Click(object sender, EventArgs e)
{
pictureBox1.BackgroundImage = btn.Properties.Resources.pic1;
System.Threading.Thread.Sleep(1000);
pictureBox1.BackgroundImage = btn.Properties.Resources.pic2;
}
خب حق داره طفلک ! چون اجازه نفس کشیدن بهش ندادید!
برنامه رو به یکی از دو شکل زیر اصلاح کنید. فکر میکنم در هر دوحالت جواب بده:
private void pictureBox1_Click(object sender, EventArgs e)
{
pictureBox1.BackgroundImage = btn.Properties.Resources.pic1;
Application.DoEvents();
System.Threading.Thread.Sleep(1000);
pictureBox1.BackgroundImage = btn.Properties.Resources.pic2;
}
و یا :
private void pictureBox1_Click(object sender, EventArgs e)
{
pictureBox1.BackgroundImage = btn.Properties.Resources.pic1;
pictureBox1.Refresh();
System.Threading.Thread.Sleep(1000);
pictureBox1.BackgroundImage = btn.Properties.Resources.pic2;
}