2012-01-04 2 views
1

Для моего теста я создал небольшую программу на C# для обнаружения нажатий клавиша с этим кодом:обнаружить keypression при сворачивании и TrayIcon

protected override void OnKeyDown(KeyEventArgs e) 
{ 
    if (e.KeyCode == Keys.F12) MessageBox.Show("f12 pressed"); 
} 

Это прекрасно работает, когда форма целенаправленное и активные. Я потратил много времени, чтобы найти, как установить его для работы при минимизации, я нашел решение здесь, чтобы добавить значок в системном трее. Я последовал за решением, но больше не работал.

Когда я минимизирую его, появляется лоток значков и работает, но я не обнаружил нажатия клавиш.

ответ

1

Ваша форма получит только события нажатия клавиши при фокусировке, чтобы получать другие события нажатия клавиш, необходимые для регистрации глобальной горячей клавиши.

http://www.dreamincode.net/forums/topic/180436-global-hotkeys/

+0

я не понимаю, как применить к моей программе ... – devilkkw

+0

Создать новый класс для кода HotKey, а затем добавить «использование» код из статьи в к текущей форме коду – benPearce

+0

благодарственной-х много. решение grat – devilkkw

Смежные вопросы