![]() |
C# привязка к клавишам
Здраствуйте у меня вопрос как можно привязать кнопку к комбинации клавиш. Например сохранить кнопка (ctrl+s)
|
API: user32.dll --> RegisterHotKey() ...
Код:
[DllImport("user32")] |
А можно как нибудь попроще?
A то сложно здесь както |
Код:
private void Form1_KeyDown(object sender, KeyEventArgs e)тут один нюанс, код сработает при нажатии сочетания на активном окне... |
Цитата:
|
А можно ли по другому))?
|
на api практичнее ...
|
Ну мне расскажи как подключить все это дело
|
Код:
using System.Runtime.InteropServices;После класса добавляешь библиотеки и констнаты Код:
public partial class Form1 : FormRegisterHotKey( this.Handle, > хэндл нашего окна 42, > магическое число ;) , идентифекатор хоткея , запомни его ... MOD_WIN, > значит первой клавишей хоткея будет Win - клавиша , соответственно смотри констаты сверху (int)Keys.T > значит что второй клавишей будет клавиша "T" , можешь поменять на любую , например (int)Keys.R ) используем например: RegisterHotKey(this.Handle, 42, MOD_WIN, (int)Keys.A); RegisterHotKey(this.Handle, 43, MOD_SHIFT, (int)Keys.W); Код:
protected override void WndProc(ref Message m)и незабуть при закрытии убрать все хоткеи: UnregisterHotKey(this.Handle, 42); UnregisterHotKey(this.Handle, 43); |
БО000000000000льшое спасибо!!!
|
| Время: 11:06 |