4

たとえば、私はに設定timer1.Intervalしまし5000たが、タイマーが刻む前にこの間隔がどれだけ残っているかを知りたいと思います。どうすればそれができますか?

4

5 に答える 5

4

タイマー時間を確認するには?

それはいけません。タイマー クラスは、タイマーが発火するまでの残り時間をチェックする方法を提供しません。できる最善の方法は、タイマーが最後に作動した時刻を追跡し、次のティックまでの残り時間を自分で計算することです。

于 2012-05-22T10:01:01.323 に答える
1

1000 (ミリ秒) の間隔で別のタイマーを使用できます。1 ミリ秒の間隔は実際にはオプションではないと思います。これはシステムに過度のストレスを与え、とにかく信頼性が低いためです。

このタイマーが経過するたびに、ティック数を確認し (これは常に 1000 の多数ですか?)、5000 から減算 (またはモジュロを使用) できます。

于 2012-05-22T10:25:03.543 に答える
0

しかし、私はできません:

これは、等号の前により小さい記号があり、その逆ではないためです。

その<=ではない=<

if (timer1.Interval <= 5000)
{
    //do something
}
于 2012-05-22T09:48:05.320 に答える
0

変更されないプロパティである Interval を使用しています (常に 5000 になるため、5000 より小さいかどうかを確認しても意味がありません)。また、このコードがTimer1_Tick関数内にあると効率的ではありません。ただし、必要と思われるコードは次のとおりです。

if (timer1.Interval <= 5000)
{
  //do something
}
于 2012-05-22T09:48:57.073 に答える