最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C# WinForm中實(shí)現(xiàn)快捷鍵自定義設(shè)置實(shí)例

 更新時間:2015年01月23日 09:38:54   投稿:junjie  
這篇文章主要介紹了對C# WinForm中實(shí)現(xiàn)快捷鍵自定義設(shè)置實(shí)例,本文實(shí)現(xiàn)了大多數(shù)軟件如QQ、有道詞典中的快捷鍵設(shè)置功能,即按下相應(yīng)按鍵后顯示在文本框中,需要的朋友可以參考下

本文源碼下載:http://xiazai.jb51.net/201501/tools/cs-key-setting.rar

項(xiàng)目開發(fā)過程中,需要實(shí)現(xiàn)類似有道詞典的軟件設(shè)置中的自定義快捷鍵功能,如下圖所示:

當(dāng)我們相繼按下Ctrl+Alt+M的時候,軟件就會自動將快捷鍵顯示在文本框中。

最終的效果如下圖所示:

核心代碼如下所示:

復(fù)制代碼 代碼如下:

private void keyDown(object sender, KeyEventArgs e)
{
    StringBuilder keyValue = new StringBuilder();
    keyValue.Length = 0;
    keyValue.Append("");
    if (e.Modifiers != 0)
    {
        if (e.Control)
            keyValue.Append("Ctrl + ");
        if (e.Alt)
            keyValue.Append("Alt + ");
        if (e.Shift)
            keyValue.Append("Shift + ");
    }
    if ((e.KeyValue >= 33 && e.KeyValue <= 40) ||
        (e.KeyValue >= 65 && e.KeyValue <= 90) ||   //a-z/A-Z
        (e.KeyValue >= 112 && e.KeyValue <= 123))   //F1-F12
    {
        keyValue.Append(e.KeyCode);
    }
    else if ((e.KeyValue >= 48 && e.KeyValue <= 57))    //0-9
    {
        keyValue.Append(e.KeyCode.ToString().Substring(1));
    }
    this.ActiveControl.Text = "";
    //設(shè)置當(dāng)前活動控件的文本內(nèi)容
    this.ActiveControl.Text = keyValue.ToString();
}

private void keyUp(object sender, KeyEventArgs e)
{
    string str = this.ActiveControl.Text.TrimEnd();
    int len = str.Length;
    if (len >= 1 && str.Substring(str.Length - 1) == "+")
    {
        this.ActiveControl.Text = "";
    }
}

e.KeyValue和字符的對應(yīng)關(guān)系

字符 e.KeyValue
a-z|A-Z 65-90
F1-F12 112-123
0-9 48-57
PageUp 33
PageDown 34
End 35
Home 36
左(←) 37
上( ↑ ) 38
右(→) 39
下( ↓ ) 40

接著,為textbox控件分別設(shè)置_KeyDown和_KeyUp事件,并在其中調(diào)用以上2個核心函數(shù)。

如下所示:

復(fù)制代碼 代碼如下:

private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
    keyDown(sender, e);
}

private void textBox1_KeyUp(object sender, KeyEventArgs e)
{
    keyUp(sender, e);
}


相關(guān)文章

  • php生成不重復(fù)隨機(jī)數(shù)、數(shù)組的4種方法分享

    php生成不重復(fù)隨機(jī)數(shù)、數(shù)組的4種方法分享

    這篇文章主要介紹了php生成不重復(fù)隨機(jī)數(shù)、數(shù)組的4種方法分享,本文直接給出實(shí)現(xiàn)代碼,并對生成效率做了對比,需要的朋友可以參考下
    2015-03-03
  • php中spl_autoload詳解

    php中spl_autoload詳解

    SPL 是Standard PHP Library(標(biāo)準(zhǔn)PHP庫)的縮寫。它是PHP5引入的一個擴(kuò)展庫,其主要功能包括autoload機(jī)制的實(shí)現(xiàn)及包括各種Iterator接口或類。 SPL autoload機(jī)制的實(shí)現(xiàn)是通過將函數(shù)指針autoload_func指向自己實(shí)現(xiàn)的具有自動裝載功能的函數(shù)來實(shí)現(xiàn)的。
    2014-10-10
  • PHP5.5基于mysqli連接MySQL數(shù)據(jù)庫和讀取數(shù)據(jù)操作實(shí)例詳解

    PHP5.5基于mysqli連接MySQL數(shù)據(jù)庫和讀取數(shù)據(jù)操作實(shí)例詳解

    這篇文章主要介紹了PHP5.5基于mysqli連接MySQL數(shù)據(jù)庫和讀取數(shù)據(jù)操作,結(jié)合實(shí)例形式詳細(xì)分析了php5.5使用mysqli連接、讀取mysql數(shù)據(jù)庫,以及PDO預(yù)處理相關(guān)操作技巧,需要的朋友可以參考下
    2019-02-02
  • php中將字符串轉(zhuǎn)為HTML的實(shí)體引用的一個類

    php中將字符串轉(zhuǎn)為HTML的實(shí)體引用的一個類

    php將字符串轉(zhuǎn)為HTML的實(shí)體引用的一個類,有需要的朋友可以參考下
    2013-02-02
  • PHP中empty,isset,is_null用法和區(qū)別

    PHP中empty,isset,is_null用法和區(qū)別

    最近在閱讀項(xiàng)目的源碼,發(fā)現(xiàn)源碼中就對empty、isset和is_null函數(shù)(語言特性)亂用,有的地方很明顯的就挖坑了。不能正確的去理解這些東西,就很可能給后續(xù)的開發(fā)挖坑了。
    2017-02-02
  • php實(shí)現(xiàn)讀取和寫入tab分割的文件

    php實(shí)現(xiàn)讀取和寫入tab分割的文件

    這篇文章主要介紹了php實(shí)現(xiàn)讀取和寫入tab分割的文件,涉及php文件讀寫及字符串操作的相關(guān)技巧,需要的朋友可以參考下
    2015-06-06
  • php文件后綴不強(qiáng)制為.php的實(shí)操方法

    php文件后綴不強(qiáng)制為.php的實(shí)操方法

    在本篇文章里小編給大家整理的是一篇關(guān)于php文件后綴不強(qiáng)制為.php的實(shí)操方法,有需要的朋友們參考下。
    2019-09-09
  • PHP中變量引用與變量銷毀機(jī)制分析

    PHP中變量引用與變量銷毀機(jī)制分析

    這篇文章主要介紹了PHP中變量引用與變量銷毀機(jī)制,較為深入的分析了PHP中變量的引用機(jī)制及其原理以及對應(yīng)的變量的銷毀機(jī)制,有助于深入理解PHP程序設(shè)計(jì)原理,需要的朋友可以參考下
    2014-11-11
  • CentOS7系統(tǒng)搭建LAMP及更新PHP版本操作詳解

    CentOS7系統(tǒng)搭建LAMP及更新PHP版本操作詳解

    這篇文章主要介紹了CentOS7系統(tǒng)搭建LAMP及更新PHP版本操作,總結(jié)分析了CentOS7系統(tǒng)搭建LAMP及更新PHP版本操作相關(guān)原理、步驟、操作命令與注意事項(xiàng),需要的朋友可以參考下
    2020-03-03
  • php的instanceof和判斷閉包Closure操作示例

    php的instanceof和判斷閉包Closure操作示例

    這篇文章主要介紹了php的instanceof和判斷閉包Closure操作,結(jié)合實(shí)例形式分析了PHP使用instanceof判斷類實(shí)例以及判斷閉包Closure相關(guān)操作技巧,需要的朋友可以參考下
    2020-01-01

最新評論

双城市| 乌鲁木齐县| 南靖县| 白城市| 清水县| 中西区| 德化县| 光山县| 栾城县| 盐城市| 霍山县| 宜川县| 堆龙德庆县| 文登市| 白朗县| 同德县| 界首市| 芜湖市| 屏东市| 平泉县| 明星| 吴川市| 平遥县| 汶上县| 嘉义县| 安多县| 祁连县| 常山县| 上饶县| 南平市| 宕昌县| 灵石县| 金华市| 科尔| 湘乡市| 株洲县| 莆田市| 乌兰浩特市| 张家川| 会理县| 岳西县|