C# 實現全局熱鍵 – 程序內快捷鍵
此系列的最後一篇,超級簡單。
protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { const int WM_KEYDOWN = 0x100; const int WM_SYSKEYDOWN = 0x104; if ((msg.Msg == WM_KEYDOWN) || (msg.Msg == WM_SYSKEYDOWN)) { switch (keyData) { case Keys.Alt | Keys.B: this.Text = "按下了Alt+B"; break; case Keys.Control |Keys.Alt |Keys.A: this.Text = "按下了Ctrl+Alt+A"; break; } } return base.ProcessCmdKey(ref msg, keyData); }
重載窗體的ProcessCmdKey,在裡邊實現對指定按鍵進行相應操作,一般情況下我不大會單獨使用Alt鍵,有時候會出現熱鍵失效的情況,這裡的代碼僅供參考。
篇幅有點小,剛剛還有猶豫好不好寫在上一篇文章後,想想還是獨立寫篇好,兩種方式差別有點大。