C# でタイマーを使用する方法を見つけようとしましたが、どのチュートリアルも本当に理解できませんでした。1秒待ってから何かを実行するループを取得したい(Thread.Delayではなく、他のことが起こっているときに同時に実行できるもの)。誰かが親切にコードの書き方を教えてくれたり、初心者が理解できるサンプルを書いてくれたりしたら、とても感謝しています。
public partial class Char1 : Form
{
private static System.Timers.Timer aTimer;
public static void OnTimedEvent(object source, ElapsedEventArgs e)
{
Mainprog.count += 1;
}
public Char1()
{
InitializeComponent();
}
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
while (checkBox1.Checked)
{
aTimer.Interval = 2000;
aTimer.Enabled = true;
aTimer.Elapsed += new ElapsedEventHandler(OnTimedEvent);
}
}
}
2秒ごとにイベントを呼び出そうとしましたが、クラッシュします。これを修正する方法について何か考えはありますか?