private void StartCountDown() { if (isRunning) { return; } isRunning = true; //カウントダウンフォームを生成し、表示 using (dlgCountDown CountDown = new dlgCountDown()) { UpdateTrayContextMenu(false); if (CountDown.ShowDialog(this) == System.Windows.Forms.DialogResult.OK) { #if DEBUG Console.WriteLine("ディスプレイ電源オフ:{0}", DateTime.Now); #endif PowerControl.DisplayPowerTo(DisplayPowerState.Off); if (isHotKey) { this.Visible = isBeforeVisible; this.WindowState = beforeState; } else { System.Threading.Thread.Sleep(2000); } } else { #if DEBUG Console.WriteLine("キャンセル:{0}", DateTime.Now); #endif } isHotKey = false; } isRunning = false; UpdateTrayContextMenu(true); }
/// <summary> /// PowerOffボタンのイベントハンドラ /// </summary> private void btnPowerOff_Click(object sender, EventArgs e) { //ドラッグ中なら処理終了 if (isMouseMove) { return; } //また、カウントダウンが進行している間にイベントが発生した場合はキャンセルする else if (isRunning) { OnForceRun(); return; } //設定で強制実行モードになっている場合は電源を切る else if (Properties.Main.Default.isForceRun) { PowerControl.DisplayPowerTo(DisplayPowerState.Off); return; } StartCountDown(); }
private void cMenuTrayRunNow_Click(object sender, EventArgs e) { OnForceRun(); PowerControl.DisplayPowerTo(DisplayPowerState.Off); }