I want to insert delay for changing color of button for 2000 milisecond in my game App in c# ... what command should I use for it ?? ( I want to changes color of button for 2 sec and then come back to normal state ) thank you
switch (colorNum)
{
case 1:
btnRed.BackColor = Color.Red
btnRed.BackColor = Color.LightCoral;
firedColors[count] = "Red";
count++;
break;
case 2:
btnBlue.BackColor = Color.Blue;
btnRed.BackColor = Color.LightBlue;
firedColors[count] = "Blue";
count++;
break;
case 3:
btnYellow.BackColor = Color.Gold;
btnYellow.BackColor = Color.LightYellow;
firedColors[count] = "Yellow";
count++;
break;
}
Here is one way you can do it with async - await
:
using System.Threading.Tasks;
async void YourFunction() // <--- Use "async" keyword
{
switch (colorNum)
{
case 1:
btnRed.BackColor = Color.Red;
await Task.Delay(2000);
btnRed.BackColor = Color.LightCoral;
firedColors[count] = "Red";
count++;
break;
case 2:
btnBlue.BackColor = Color.Blue;
await Task.Delay(2000);
btnRed.BackColor = Color.LightBlue;
firedColors[count] = "Blue";
count++;
break;
case 3:
btnYellow.BackColor = Color.Gold;
await Task.Delay(2000);
btnYellow.BackColor = Color.LightYellow;
firedColors[count] = "Yellow";
count++;
break;
}
}
Note: this code use .Net version 4.5 and above.