• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >C#教程 > C# WinForm快捷键设置技巧

C# WinForm快捷键设置技巧

作者:凌晨三秒 字体:[增加 减小] 来源:互联网 时间:2017-05-28

凌晨三秒 通过本文主要向大家介绍了c站,c语言,欲情 c max,奔驰c200,85度c等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

1、Alt+*(按钮快捷键)

按钮快捷键也为最常用快捷键,其设置也故为简单。在大家给button、label、menuStrip等其他控件的Text属性指定名称时,在其后面加上‘&'然后在加上一个指定字母即可。如:确定(&D),(Alt+D)调用。

如指定多个字母,则第一个为快捷键。如:确定(&OK),(Alt+O)调用;文件(&Fill),(Alt+F)调用。

2、Ctrl+*及其他组合键

把 Form 的 KeyPreview 属性设为 True

使用Modifiers可设置组合键,键盘数字区按键的Keys枚举以D打头,而小键盘上的数字以NumPad打头。按下Ctrl与Shift组合键的方法与其类似,将Ctrl和Alt的枚举转换为int型相加后与Modifiers对比,这样即可判断是否按下了该组合键。

private void  frmMain_KeyDown(object sender, KeyEventArgs e)
{
      //比如你的窗体名是frmMain,确定按钮btnOK,保存按钮btnSave
      //单键
     switch (e.KeyCode)
     {
          case Keys.F1:
            btnOK_Click(this, EventArgs.Empty);
            break;
           case Keys.F2:
             btnSave_Click(this, EventArgs.Empty); 
             break; 
     }
      // 组合键
      if (e.KeyCode == Keys.F1 && e.Modifiers == Keys.Control)     //Ctrl+F1
      {
        btnShouYi_Click(this, EventArgs.Empty);
      }
   if ((int)e.Modifiers == ((int)Keys.Control + (int)Keys.Alt) && e.KeyCode == Keys.D0)  //Ctrl + Alt + 数字0
   {
     MessageBox.Show("按下了Control + Alt + 0");
      }
</div>

         另外的,与窗体的AcceptButton属性相关联的按钮,将与键盘上的Enter键对应;与窗体的CancelButton属性相关联的按钮,将与键盘上的Ecs键对应。
}

======================================================

键   代码    

  BACKSPACE   {BACKSPACE}、{BS}   或   {BKSP}   
  BREAK   {BREAK}   
  CAPS   LOCK   {CAPSLOCK}   
  DEL   或   DELETE   {DELETE}   或   {DEL}   
  DOWN   ARROW(下箭头键)   {DOWN}   
  END   {END}   
  ENTER   {ENTER}   或   ~   
  ESC   {ESC}   
  HELP   {HELP}   
  HOME   {HOME}   
  INS   或   INSERT   {INSERT}   或   {INS}   
  LEFT   ARROW(左箭头键)   {LEFT}   
  NUM   LOCK   {NUMLOCK}   
  PAGE   DOWN   {PGDN}   
  PAGE   UP   {PGUP}   
  PRINT   SCREEN   {PRTSC}(保留供将来使用)   
  RIGHT   ARROW(右箭头键)   {RIGHT}   
  SCROLL   LOCK   {SCROLLLOCK}   
  TAB   {TAB}   
  UP   ARROW(上箭头键)   {UP}   
  F1   {F1}   
  F2   {F2}   
  F3   {F3}   
  F4   {F4}   
  F5   {F5}   
  F6   {F6}   
  F7   {F7}   
  F8   {F8}   
  F9   {F9}   
  F10   {F10}   
  F11   {F11}   
  F12   {F12}   
  F13   {F13}   
  F14   {F14}   
  F15   {F15}   
  F16   {F16}   
  数字键盘加号   {ADD}   
  数字键盘减号   {SUBTRACT}   
  数字键盘乘号   {MULTIPLY}   
  数字键盘除号   {DIVIDE}   

**********************************************************************篇3**************************************************************************************************

#region 快捷键相关
///
/// 记录快捷键
///

private void txtHotKey_KeyDown(object sender, KeyEventArgs e)
{
  int HotKeyValue = 0;
  string HotKeyString = "";
  e.SuppressKeyPress = false;
  e.Handled = true;
  if (e.Modifiers != Keys.None)
  {
    switch (e.Modifiers)
    {
      case Keys.Control:
        HotKeyString += "Ctrl + ";
        HotKeyValue = (int)e.Modifiers;
        break;
      case Keys.Alt:
        HotKeyString += "Alt + ";
        HotKeyValue = (int)e.Modifiers;
        break;
      case Keys.Shift:
        HotKeyString += "Shift + ";
        HotKeyValue = (int)e.Modifiers;
        break;
      case Keys.Control | Keys.Alt:
        HotKeyString += "Ctrl + Alt + ";
        HotKeyValue = (int)e.Modifiers;
        break;
      case Keys.Control | Keys.Shift:
        HotKeyString += "Ctrl + Shift + ";
        HotKeyValue = (int)e.Modifiers;
        break;
      case Keys.Alt | Keys.Shift:
        HotKeyString += "Alt + Shift + ";
        HotKeyValue = (int)e.Modifiers;
        break;
      case Keys.Control | Keys.Alt | Keys.Shift:
        HotKeyString += "Ctrl + Alt + Shift + ";
        HotKeyValue = (int)e.Modifiers;
        break;
    }
    if (e.KeyCode != Keys.None && e.KeyCode != Keys.ControlKey && e.KeyCode != Keys.Menu && e.KeyCode != Keys.ShiftKey)
    {
      HotKeyString += KeyCodeToString(e.KeyCode);
      HotKeyValue += (int)e.KeyCode;
    }
  }
  else
  {
    if (e.KeyCode == Keys.Delete || e.KeyCode == Keys.Back)
    {
      HotKeyString = "无";
      HotKeyValue = -1;
    }
    else if (e.KeyCode != Keys.None)
    {
      HotKeyString = KeyCodeToString(e.KeyCode);
      HotKeyValue = (int)e.KeyCode;
    }
  }
  if (HotKeyValue == 0)
    HotKeyValue = -1;
  TextBox txtHotKey = (TextBox)sender;
  txtHotKey.Text = HotKeyString;
  txtHotKey.Tag = HotKeyValue;
  txtHotKey.SelectionStart = txtHotKey.Text.Length;
}
///
/// 将按键转换成相应字符
///
/// 按键
/// 字符
private string KeyCodeToString(Keys KeyCode)
{
  if (KeyCode >= Keys.D0 && KeyCode <= Keys.D9)
  {
    return KeyCode.ToString().Remove(0, 1);
  }
  else if (KeyCode >= Keys.NumPad0 && KeyCode <= Keys.NumPad9)
  {
    return KeyCode.ToString().Replace("Pad", "");
  }
  else
  {
    return KeyCode.ToString();
  }
}
///
/// 设置按键不响应
///
private void txtHotKey_KeyPress(object sender, KeyPressEventArgs e)
{
  e.Handled = true;
}
///
/// 释放按键后,若是无实际功能键,则置无
///
private void txtHotKey_KeyUp(object sender, KeyEventArgs e)
{
  CheckHotkey(sender);
}
///
/// 失去焦点后,若是无实际功能键,则置无
///
private void txtHotKey_LostFocus(object sender, EventArgs e)
{
  CheckHotkey(sender);
}
///
/// 检查是否无实际功能键,是则置无
///
private void CheckHotkey(object sender)
{
  TextBox t



 
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • C# 检索不区分大小写并高亮显示实例详解
  • C#实现Base64处理的加密解密,编码解码示例
  • C# SqlHelper应用开发学习
  • C#多线程经典示例(吃苹果)
  • C#使用Windows Service的简单教程(创建、安装、卸载、调试)
  • C# 6.0 的知识梳理
  • C#向PPT文档插入图片以及导出图片的实例
  • C#使用Jquery zTree实现树状结构显示 异步数据加载
  • C#清理非托管对象实例分析
  • C#双缓冲技术实例详解

相关文章

  • 2017-05-28详解C#借助.NET框架中的XmlTextReader类读取XML的方法
  • 2017-05-28C# yield在WCF中的错误使用(二)
  • 2017-05-28C#实现将DataTable内容输出到Excel表格的方法
  • 2017-05-28解决C#获取鼠标相对当前窗口坐标的实现方法
  • 2017-05-28C#判断ip地址是否可以ping的通
  • 2017-05-28C#生成DLL文件的方法
  • 2017-05-28详解如何选择使用ArrayList、HashTable、List、Dictionary数组
  • 2017-05-28举例讲解C#中自动实现的属性
  • 2017-05-28c#连接mdf文件示例分享
  • 2017-05-28C#中判断本地系统的网络连接状态的方法

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • C#实现简单的井字游戏实例
    • C#实现将浮点数表示的货币数量以汉字大写形式输出的方法
    • CDMA 猫用AT命令发中文短信(C#)
    • C#编程实现获取文件夹中所有文件的文件名
    • C#图像处理之图像均值方差计算的方法
    • C#实现带消息数的App图标
    • C#图像处理之木刻效果实现方法
    • C#/Java连接sqlite与使用技巧
    • C#预定义数据类型之值类型和引用类型介绍
    • C#中动态显示当前系统时间的实例方法

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有