void HotKeyEvent() { if (!isUsingPasteHelper) { return; } // 自动粘贴功能 if (chAutoPaste.IsChecked.Value) { hotkey.Dispose(); Thread.Sleep(800); // 这里如果不暂停,可能会出现用户按键时间过长,导致在第一次粘贴时内容错乱 int delay = int.Parse(chDelay.Text) / 2; // 延迟为每次粘贴的时间间隔,而每次循环有两次延迟,故除以2 // 关于SendKey的更多内容,详见:https://msdn.microsoft.com/en-us/library/system.windows.forms.sendkeys(v=vs.110).aspx string key = "{" + chAutoKeyDown.Text + "}"; IsEnabled = false; // 将窗口挂起 while (PasteLineIndex < PasteLines.Count) { Form.SendKeys.SendWait("^{V}"); Thread.Sleep(delay); if (++PasteLineIndex >= PasteLines.Count) { hotkey.Dispose(); ClearPasteHelper(); IsEnabled = true; break; } if (key != "{NONE}") { Form.SendKeys.SendWait(key); } Clipboard.SetText(PasteLines[PasteLineIndex]); Thread.Sleep(delay); } } }
private void unregisterCairoMenuHotKey() { if (Screen.Primary) { cairoMenuHotKey?.Dispose(); cairoMenuHotKey = null; } }
/// <summary> /// Handle the window closing finalization, stop monitoring process, deactivate hotkey, notification icon. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> void MainWindow_Closing(object sender, System.ComponentModel.CancelEventArgs e) { this.Closing -= MainWindow_Closing; ClipboardMonitor.Stop(); // do not forget to stop ni.Visible = false; hotKey.Unregister(); hotKey.Dispose(); }
private void UnregisterHotKeys() { if (_hotKey == null) { return; } _hotKey.HotKeyPressed -= OnHotKeyPressed; _hotKey.Dispose(); }
private void CurrentDomain_ProcessExit(object sender, EventArgs e) { try { hotkeys.Dispose(); } catch (Exception ex) { } }
public void Dispose() { try { hotKey.UnregisterHotKey(); hotKey.Dispose(); } catch (NullReferenceException) { } }
private void InitializeHotKeys() { var kc = new SWF.KeysConverter(); var mkc = new ModifierKeysConverter(); _sshHotkey = new HotKey((ModifierKeys)mkc.ConvertFromString(_config.Hotkeys.Select.Modifiers), (SWF.Keys)kc.ConvertFromString(_config.Hotkeys.Select.Key)); _sshHotkey.HotKeyPressed += k => ((MainWindow)this.MainWindow).ShowFullscreenWindow(); Exit += (s, e) => { _sshHotkey.Dispose(); }; }
public void SetHotkey() { if (_hotkey != null) { _hotkey.Unregister(); _hotkey.Dispose(); } var settings = SettingsData.Load().GeneralSettings; var modifierKeys = default(ModifierKeys); if (settings.HotkeyControl) { modifierKeys |= ModifierKeys.Control; } if (settings.HotkeyAlt) { modifierKeys |= ModifierKeys.Alt; } if (settings.HotkeyShift) { modifierKeys |= ModifierKeys.Shift; } var key = (Keys)KeyInterop.VirtualKeyFromKey(settings.Hotkey); _hotkey = new HotKey(modifierKeys, key, Current.MainWindow); var isRegistered = _hotkey.Register(); if (isRegistered) { _hotkey.HotKeyPressed += OnHotKeyPressed; } else { MessageBox.Show("Can't register hot key!", "Doit App - Register Hotkey", MessageBoxButton.OK, MessageBoxImage.Warning); } }
private void SetHotkey() { if (_hotkey != null) { _hotkey.Dispose(); _hotkey = null; } if (SelectedVirtualKey != Key.None) { KeyModifier modifier = (UseAlt ? KeyModifier.Alt : KeyModifier.None) | (UseShift ? KeyModifier.Shift : KeyModifier.None) | (UseControl ? KeyModifier.Ctrl : KeyModifier.None) | (UseWindowsKey ? KeyModifier.Win : KeyModifier.None); _hotkey = new HotKey( SelectedVirtualKey, modifier | KeyModifier.NoRepeat, _ => RaiseHotkeyTriggered()); } }
public void Dispose() { WindowModel.ClearRect(); hotKey.Dispose(); timer.Enabled = false; }
public void Exit() { Application.Exit(); m_Hotkey.Dispose(); }
private void Window_Closed(object sender, EventArgs e) { _activateWindowKey.Dispose(); _showTranslationWindowHotKey.Dispose(); }
/// <summary> /// フォームが閉じ始めた時に呼び出されます /// </summary> private void RectForm_FormClosing(object sender, FormClosingEventArgs e) { m_hotKey.Dispose(); }
/// <summary> /// 後片付け /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void Form1_FormClosed(object sender, FormClosedEventArgs e) { hotKey.Dispose(); }