特定の(非規則的な)時間間隔の後に異なるキーをアクティブなウィンドウに送信するWindowsフォームアプリケーションを作成しようとしています。特定の時間間隔の後にコードを実行すると、C#.NET
たとえば、ボタンを押した後、プログラムは3秒間待機してから、アクティブなウィンドウに "H"を送信します。もう1秒後に "E"が送信され、もう1秒後に "Y"が送信されます。
しかし、私はこれ試してみてください(少なくとも)プログラムウェイト3秒
Thread.Sleep(3000);
SendKeys.Send("H");
Thread.Sleep(1000);
SendKeys.Send("E");
Thread.Sleep(1000);
SendKeys.Send("Y");
を、しかし送られた次の二つのキーの間に一時停止していないようです。
スリープでは少なくとも引数の長さだけ遅延が保証されているので、私はタイマーを使って同様のものを実装しようとしてきました。しかし、私が見つけることができた唯一の例は、一定の時間間隔の後にコードを実行していました。
スリープを使用して試したことを達成するためにタイマーを使用する方法はありますか、それとも一般的にはより良い方法ですか?
次回のインターバルを反映させるたびにタイマーを再定義できると思いますか? – TGH