我想知道如何使用减少计数器来替换计时器,因为计时器将从3开始,并且每秒减少,直到达到零,它将执行一个动作。任何帮助?
// Change Image from "Hut" to Mole \\
private void ChangeImage()
{
Image newImage = HoleImage();
molePopup = MoleImage();
int numCol = Convert.ToInt32(NumberOfColumns);
//Random Number - Col
Random randomColumns = new Random();
int ranCol = randomColumns.Next(1, numCol);
//Random Number - Row
Random randomRow = new Random();
int ranRow = randomRow.Next(1, NumberofRows);
string Moleimage = TUtils.GetIniFileString(Moleini, "ImagePath", "PictureFile", Root + "mole2.png");
//Populate Grid with Mole at Random Times \\
Grid.SetRow(molePopup, ranRow);
Grid.SetColumn(molePopup, ranCol);
grid_Main.Children.Add(molePopup);
molePopup.MouseUp += new MouseButtonEventHandler((o, e) =>
{
MolePoints++;
grid_Main.Children.Remove(molePopup);
});
}
答案 0 :(得分:0)
我可能不清楚,但只要你在程序中只有一个线程(否则没有其他任何东西),你会使用这样的东西:
for(int i = 3; i > 0; i--)
{
Thread.Sleep(1000);
}
doWhatever();
对于循环的每次迭代,您将线程“休眠”1000毫秒或1秒。为此,您需要在using System.Threading
中包含System.Threading。如果您在后台执行某些操作,请使用替代方法而不是Sleep,因为它会在指定的持续时间内锁定线程执行。
编辑:
This是Thread.Sleep()
方法的MSDN文档。如果我正确理解你的意思,似乎与你想要做的非常相似。
答案 1 :(得分:0)