用户自定义HotKey

这个博客介绍了一个用于在Windows Forms或UserControl中自定义Ctrl和Shift组合热键的类,可以截获并处理热键消息。然而,作者尚未找到实现Alt键作为单一辅助键来创建如Alt+F1热键的方法。
摘要由CSDN通过智能技术生成

这是一个可以在Form 或者UserControl 中自定义Ctrl ,Shift + 非系统按键组成热键,并截获热键消息处理的class,可是一直没有找到好办法实现Alt键作为单一辅助键实现如Alt+F1 的热键,望高手指点。

using System;
using System.Windows.Forms;
using System.Collections;
using System.Runtime.InteropServices;
namespace HotKey
{
 

 public enum KeyModifiers
 {
  Ctrl =  Keys.Control,
  Shift = Keys.Shift
 
 }
 
 public struct HotkeyDefine
 {
  private KeyModifiers[] kms;
  private Keys key;
  private HotKeyHandler hh;
 
  public HotKeyHandler Hh
  {
   get
   {
    return this.hh;
   }
  }
  public KeyModifiers[] Kms
  {
   get
   {
    return this.kms;
   }
  }
  public Keys Key
  {
   get
   {
    return this.key;
   }
  }

  public HotkeyDefine(KeyModifiers[] kms, Keys key, HotKeyHandler hh)
  {
   this.kms = kms;
   this.key = key;
   this.hh = hh;
  }
 }

 public class HotkeyEventArgs : EventArgs
 {
 
  public HotkeyEventArgs(bool CtrlPressed,bool ShiftPressed,Keys key)
  {
   this.ctrlPressed = CtrlPressed;
   this.shiftPressed = ShiftPressed;
   this.key = key;
  }

  private bool ctrlPressed;
  private bool shiftPressed;
  private Keys key;

  public bool CtrlPressed
  {
   get
   {
    return this.ctrlPressed;
   }
  }
  public bool ShiftPressed
  {
   get

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值