Esempio n. 1
0
        /// <summary>
        /// 注销
        /// </summary>
        /// <param name="modifierKey">组合键</param>
        /// <param name="key">键</param>
        /// <returns></returns>
        public bool Unregister(Enumeration.ModifierKeys modifierKey, Keys key)
        {
            //热键ID
            ushort id = GlobalAtom.Find(this.GetHotKeyName(modifierKey, key));

            //热键存在
            if (this.HotKeyTable.ContainsKey(id))
            {
                //注销
                if (HotKeyManager.UnregisterHotKey(this.Owner.Handle, id))
                {
                    //从热键表中删除
                    this.HotKeyTable.Remove(id);
                    //删除对应的全局原子
                    GlobalAtom.Delete(id);
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            else
            {
                //热键不存在
                return(false);
            }
        }
Esempio n. 2
0
 /// <summary>
 /// 清空
 /// </summary>
 public void Clear()
 {
     //轮循
     foreach (ushort id in this.HotKeyTable.Keys)
     {
         //注销
         HotKeyManager.UnregisterHotKey(this.Owner.Handle, id);
         //删除对应的全局原子
         GlobalAtom.Delete(id);
     }
     //从热键表中删除
     this.HotKeyTable.Clear();
 }