C#實(shí)現(xiàn)快捷鍵的幾種常用方法匯總
快捷鍵是很多軟件的常用功能,本文實(shí)例講解了三種方法來實(shí)現(xiàn)C# button快捷鍵,如Alt + *(按鈕快捷鍵),Ctrl+*及其他組合鍵等?,F(xiàn)詳述如下:
一、 C# button快捷鍵之第一種:Alt + *(按鈕快捷鍵)
在大家給button、label、menuStrip等控件設(shè)置Text屬性時(shí)在名字后邊加&鍵名就可以了,比如button1.text= "確定(&O)"。就會(huì)有快捷鍵了,這時(shí)候按Alt+O就可以執(zhí)行按鈕單擊事件。
二、C# button快捷鍵之第二種:Ctrl+*及其他組合鍵
在WinForm中設(shè)置要使用組合鍵的窗體的KeyPreview(向窗體注冊(cè)鍵盤事件)屬性為True;
然后使用窗體的KeyDown事件(在首次按下某個(gè)鍵時(shí)發(fā)生).
C# button快捷鍵實(shí)例代碼如下:
private void ***_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.F && e.Control) { button1.PerformClick(); //執(zhí)行單擊button1的動(dòng)作 } }
此處注意:
1、***代表窗體名稱,大家可以看一下 ”Keys”的枚舉參數(shù),以實(shí)現(xiàn)自己需要
2、還有一個(gè)問題,當(dāng)使用Ctrl + *快捷鍵時(shí),對(duì)于焦點(diǎn)在可寫的控件(如TextBox)上時(shí),可能會(huì)將* 鍵值同時(shí)輸入,則需要加另一句話將Handled設(shè)置為true,以取消 KeyPress 事件。
即:
private void ***_KeyDown(object sender, KeyEventArgs e) { if (e.KeyCode == Keys.F && e.Control) { e.Handled = true; //將Handled設(shè)置為true,指示已經(jīng)處理過KeyPress事件 button1.PerformClick(); } }
三、C# button快捷鍵之第三種方法
還是以button為例。給form添加一個(gè)contextMenuStrip1,將其邦定到button上,假設(shè)為button1。給contextMenuStrip1添加一個(gè)item,然后為它設(shè)置快捷鍵(就是你想加在button上的快捷鍵),并且將它的Visible屬性設(shè)為false。這樣,C# button快捷鍵設(shè)置成功。
四、C# button快捷鍵之第四種方法
protected override bool ProcessCmdKey(ref Message msg, Keys keyData) { if (keyData == (Keys.Escape)) { this.Close(); } return base.ProcessCmdKey(ref msg, keyData); }
希望本文所述方法對(duì)于大家的C#程序設(shè)計(jì)能夠起到一定的借鑒與幫助作用。
相關(guān)文章
C#?使用PrintDocument類打印標(biāo)簽的方法
本文介紹打印機(jī)初步配置,以及實(shí)現(xiàn)方法,標(biāo)簽主要展示資產(chǎn)基本信息以及二維碼,對(duì)C#?使用PrintDocument類打印標(biāo)簽的詳細(xì)過程感興趣的朋友一起看看吧2022-04-04C#實(shí)現(xiàn)DataTable轉(zhuǎn)換成IList的方法
這篇文章主要介紹了C#實(shí)現(xiàn)DataTable轉(zhuǎn)換成IList的方法,涉及C#針對(duì)DataTable操作的相關(guān)技巧,需要的朋友可以參考下2016-03-03C#實(shí)現(xiàn)控制線程池最大數(shù)并發(fā)線程
這篇文章主要介紹了C#實(shí)現(xiàn)控制線程池最大數(shù)并發(fā)線程的相關(guān)資料,需要的朋友可以參考下2016-07-07C#算法設(shè)計(jì)之關(guān)于1000瓶水的問題
這篇文章主要介紹了C#算法設(shè)計(jì)之關(guān)于1000瓶水的問題,是一個(gè)比較經(jīng)典的算法問題,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-01-01c#數(shù)據(jù)庫(kù)與TXT導(dǎo)入導(dǎo)出的實(shí)例
最近剛學(xué)完ADO.NET,做了個(gè)數(shù)據(jù)導(dǎo)入導(dǎo)出的題目,是將txt中的數(shù)據(jù)導(dǎo)入數(shù)據(jù)庫(kù),然后將數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)出到txt中,這里說的數(shù)據(jù)的格式是“tom|23”,tom指名字,23指年齡。廢話也不多說了,大家直接看代碼。2013-04-04HttpWebRequest出錯(cuò).Section=ResponseHeader Detail=CR
HttpWebRequest出錯(cuò).Section=ResponseHeader Detail=CR...2007-03-03winform關(guān)閉窗體FormClosing事件用法介紹
這篇文章介紹了winform關(guān)閉窗體FormClosing事件的用法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03快速解決owin返回json字符串多帶了雙引號(hào)"多了重string轉(zhuǎn)義字符串
下面小編就為大家?guī)硪黄焖俳鉀Qowin返回json字符串多帶了雙引號(hào)"多了重string轉(zhuǎn)義字符串。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-08-08