ロードするメインフォームがあり、20分が経過したら、セキュリティ上の理由からログインフォームを開きたいです。適切なユーザーがソフトウェアを使用していることを確認したいので、タイマーの使用を検討し、タイマーに20分の間隔を設定しました。これは私のコードです:
private void timer1_Tick_1(object sender, EventArgs e)
{
foreach (Form f in Application.OpenForms)
{
if (f.Name != "login2")
{
login2 lss = new login2();
lss.ShowDialog();
}
}
}
ここでの問題は、20分ごとにフォームが開くことです。つまり、ユーザーが何もしていない場合は、ログインフォームが次々と表示され、複数のログインフォームが表示されますが、これは望ましくありません。ループを使用しましたが、それでも正しく機能しません。何故かはわからない。
これとは別に、フォームが20分間アイドル状態の場合、ログインフォームを表示し、IDがアイドル状態ではない場合、ログインフォームを表示しないという機能を実装できますか?実装は簡単ですか?私はC#を初めて使用するのは初めてなので、複雑なことはしたくありません。