C#實(shí)現(xiàn)設(shè)置或屏蔽熱鍵的方法詳解
實(shí)踐過程
效果
代碼
public partial class Form1 : Form { public Form1() { InitializeComponent(); } HOOK Hook = new HOOK();//實(shí)例化自定義類HOOK public static string[] Arrstr = new string[6];//記錄屏蔽的熱鍵 public static string[,] ArrHotkey = new string[3,2];//記錄自定義的熱鍵 public static bool istabPage = true;//判斷是設(shè)置熱鍵,還是屏蔽熱鍵 bool isShift = false;//判斷是否為組合鍵 string front = "";//記錄組合鍵前一鍵的值 string tem_s = "";//記錄單鍵或組合鍵的值 string tem_dir = "";//記錄路徑 public static int tem_Set = 0;//標(biāo)識,判斷當(dāng)前鍵是否為屏蔽的熱鍵 public static int tem_Hotkey = 0;//標(biāo)識,判斷當(dāng)前鍵是否為自定義的熱鍵 private void Form1_Load(object sender, EventArgs e) { Hook.KeyDown += new KeyEventHandler(Hook_KeyDown);//加載鍵盤的按下事件 Hook.KeyUp += new KeyEventHandler(Hook_KeyUp);//加載鍵盤的松開事件 Hook.KeyPress += new KeyPressEventHandler(Hook_KeyPress);//加載鍵盤的單擊事件 HOOK.isSet = false;//判斷是否設(shè)置熱鍵 //對記錄屏蔽熱鍵的數(shù)組進(jìn)行初始化 for (int i = 0; i < 6; i++) { Arrstr[i] = ""; } //對記錄設(shè)置熱鍵的數(shù)組進(jìn)行初始化 for (int i = 0; i < 3; i++) { for (int j = 0; j < 2;j++ ) ArrHotkey[i,j] = ""; } } private void Form1_FontChanged(object sender, EventArgs e) { Hook.Stop();//卸載鉤子 } void Hook_KeyPress(object sender, KeyPressEventArgs e) { //在單擊按鍵時,是否對該鍵進(jìn)行屏蔽 AddKeyboardEvent("KeyPress", "", e.KeyChar.ToString(), "", "", ""); } void Hook_KeyUp(object sender, KeyEventArgs e) { //在按下按鈕時,是否對該鍵進(jìn)行屏蔽 AddKeyboardEvent("KeyUp", e.KeyCode.ToString(), "", e.Shift.ToString(), e.Alt.ToString(), e.Control.ToString()); } void Hook_KeyDown(object sender, KeyEventArgs e) { //在松開組合鍵時,是否對該組合鍵進(jìn)行屏蔽 AddKeyboardEvent("KeyDown", e.KeyCode.ToString(), "", e.Shift.ToString(), e.Alt.ToString(), e.Control.ToString()); } /// <summary> /// 用于屏蔽指定的系統(tǒng)熱鍵,以及執(zhí)行自定義熱鍵 /// </summary> /// <param eventType="string">按鍵操作的類型</param> /// <param keyCode="string">鍵名稱</param> /// <param keyChar="string">鍵值</param> /// <param shift="string">是否為Shift鍵</param> /// <param alt="string">是否為Alt鍵</param> /// <param control="string">是否為Ctrl鍵</param> public void AddKeyboardEvent(string eventType, string keyCode, string keyChar, string shift, string alt, string control) { tem_Set = 0;//初始化 tem_Hotkey = 0;//初始化 bool b = false;//初始化 string keyvalue = "";//初始化 GeyKeys(keyCode, out b, out keyvalue);//獲取當(dāng)前鍵的鍵值 if (eventType == "KeyDown")//如果當(dāng)前為按下鍵 { isShift = true; if (tem_s == "")//如果當(dāng)前不是組合鍵 { if (HOOK.isSet == false)//設(shè)置屏蔽 { if (istabPage == true)//如果是“屏蔽熱鍵”選項(xiàng)卡 SetTextBox(keyvalue);//在指定文本框中顯示熱鍵 } else { //遍歷當(dāng)前熱鍵是否為屏蔽的熱鍵 for (int i = 0; i < 6; i++) { if (Arrstr[i] == tem_s)//如果是屏蔽的熱鍵 { tem_Set = 1;//當(dāng)前為屏蔽的熱鍵 break;//退出本次循環(huán) } else tem_Set = 0;//不是屏蔽的熱鍵 } } if (HOOK.isHotkey == false)//設(shè)置自定義熱鍵 { if (istabPage == false)//如果當(dāng)前是設(shè)置自定義熱鍵 SetTextBox(keyvalue);//在指定的文本框顯示熱鍵 } else { //遍歷當(dāng)前熱鍵是否為自定義熱鍵 for (int i = 0; i < 3; i++) { if (ArrHotkey[i, 0] == tem_s)//如果是自定義熱鍵 { tem_Hotkey = 1;//屏蔽當(dāng)前熱鍵 try { //如果自定義熱已設(shè)置 if (ArrHotkey[i, 1].Trim().Length != 0 && tem_dir != ArrHotkey[i, 1].Trim()) System.Diagnostics.Process.Start(ArrHotkey[i, 1]);//執(zhí)行自定義熱鍵的相關(guān)操作 tem_dir = ArrHotkey[i, 1].Trim();//記錄執(zhí)行的路徑 } catch { MessageBox.Show("文件無法打開。"); } break; } else tem_Hotkey = 0;//執(zhí)行當(dāng)前熱鍵 } } } } if (eventType == "KeyUp")//如果當(dāng)前是鍵盤松開操作 { isShift = false;//沒有組合鍵 front = "";//清空組合鍵的前一個鍵值 tem_dir = "";//清空自定義熱鍵的操作路徑 } if (isShift == true && eventType == "KeyDown")//如果是鍵盤按下操作 { if (front != keyvalue) { tem_s = "";//清空鍵或組合鍵的值 if (front == "")//如果不是組合鍵 { tem_s = keyvalue;//獲取當(dāng)前鍵的值 if (HOOK.isSet == false)//設(shè)置屏蔽 { if (istabPage == true)//如果當(dāng)前為“屏蔽熱鍵”選項(xiàng)卡 { SetTextBox("");//清空顯示熱鍵的文本框 SetTextBox(keyvalue);//將熱鍵顯示在指定的文本框中 } } else { //遍歷要屏蔽的熱鍵 for (int i = 0; i < 6; i++) { if (Arrstr[i] == tem_s)//如果存在 { tem_Set = 1;//屏蔽系統(tǒng)熱鍵 break; } else tem_Set = 0;//不屏蔽 } } if (HOOK.isHotkey == false)//設(shè)置熱鍵 { if (istabPage == false)//如果是“設(shè)置熱鍵”選項(xiàng)卡 SetTextBox(keyvalue);//在文本框中顯示當(dāng)前熱鍵 } else { //遍歷自定義熱鍵 for (int i = 0; i < 3; i++) { if (ArrHotkey[i, 0] == tem_s)//如果存在 { tem_Hotkey = 1;//屏蔽當(dāng)前熱鍵 try { if (ArrHotkey[i, 1].Trim().Length != 0 && tem_dir != ArrHotkey[i, 1].Trim())//如果對自定義熱鍵進(jìn)行了設(shè)置 System.Diagnostics.Process.Start(ArrHotkey[i, 1]);//執(zhí)行自定義熱鍵的操作 tem_dir = ArrHotkey[i, 1].Trim();//記錄路徑 } catch { MessageBox.Show("文件無法打開。"); } break; } else tem_Hotkey = 0;//執(zhí)行自定義熱鍵 } } } else//如果當(dāng)前是組合鍵 { tem_s = front + "+" + keyvalue;//記錄組合鍵 if (HOOK.isSet == false)//設(shè)置屏蔽 { if (istabPage == true)//如果當(dāng)前為“屏蔽熱鍵”選項(xiàng)卡 { SetTextBox("");//清空指定的文本框 SetTextBox(front + "+" + keyvalue);//在文本框中顯示屏蔽熱鍵 } } else { //遍歷設(shè)置的自定義熱鍵 for (int i = 0; i < 6; i++) { if (Arrstr[i] == tem_s)//如果存在 { tem_Set = 1;//屏蔽當(dāng)前熱鍵 break;//退出本次循環(huán) } else tem_Set = 0;//執(zhí)行當(dāng)前熱鍵 } } if (HOOK.isHotkey == false)//設(shè)置熱鍵 { if (istabPage == false)//如果當(dāng)前為“設(shè)置熱鍵”選項(xiàng)卡 { SetTextBox("");//清空顯示熱鍵的文本框 SetTextBox(front + "+" + keyvalue);//在指定的文本框中顯示組合鍵 } } else { //遍歷自定義熱鍵 for (int i = 0; i < 3; i++) { if (ArrHotkey[i, 0] == tem_s)//如果是設(shè)置的自定義組合熱鍵 { tem_Hotkey = 1;//屏蔽當(dāng)前組合熱鍵 try { if (ArrHotkey[i, 1].Trim().Length != 0 && tem_dir != ArrHotkey[i, 1].Trim())//如果對自定義組合熱鍵進(jìn)行了設(shè)置 System.Diagnostics.Process.Start(ArrHotkey[i, 1]);//執(zhí)行自定義組合熱鍵的操作 tem_dir = ArrHotkey[i, 1].Trim();//記錄路徑 } catch { MessageBox.Show("文件無法打開。"); } break; } else tem_Hotkey = 0;//執(zhí)行當(dāng)前組合熱鍵 } } tem_s = "";//清空熱鍵 } } front = keyvalue;//記錄組合鍵的前一個鍵值 } if (tem_Hotkey > 0 || tem_Set > 0)//如果屏蔽系統(tǒng)熱鍵或自定義熱鍵 HOOK.pp = 1;//屏蔽 else HOOK.pp = 0;//執(zhí)行 if (HOOK.isSet == false)//設(shè)置屏蔽的系統(tǒng)熱鍵 HOOK.pp = 1; if (HOOK.isHotkey == false)//設(shè)置屏蔽的自定義熱鍵 HOOK.pp = 1; } /// <summary> /// 在指定文本框中顯示要屏蔽或設(shè)置的熱鍵 /// </summary> /// <param value="string">熱鍵</param> public void SetTextBox(string value) { if (textBox1.Focused)//如果獲取焦點(diǎn) textBox1.Text=value;//顯示熱鍵 if (textBox2.Focused) textBox2.Text = value; if (textBox3.Focused) textBox3.Text = value; if (textBox4.Focused) textBox4.Text = value; if (textBox5.Focused) textBox5.Text = value; if (textBox6.Focused) textBox6.Text = value; if (textBox7.Focused) textBox7.Text = value; if (textBox9.Focused) textBox9.Text = value; if (textBox11.Focused) textBox11.Text = value; } /// <summary> /// 通過熱鍵獲取其指定的名稱 /// </summary> /// <param value="string">熱鍵</param> /// <return b="bool">是否有當(dāng)前熱鍵</return> /// <return keyvalue="string">當(dāng)前熱鍵的指定名稱</return> public void GeyKeys(string k, out bool b, out string keyvalue) { if (k.Contains("ControlKey"))//如果字符串K的值在指定的字符串中 { b = true;//返回true keyvalue = "Ctrl";//返回指定的鍵值 return; } if (k.Contains("Shift")) { b = true; keyvalue = "Shift"; return; } if (k.Contains("Win")) { b = true; keyvalue = "Win"; return; } if (k.Contains("Menu")) { b = true; keyvalue = "Alt"; return; } if (k.Length == 2 && k.Substring(0, 1) == "D")//返回F1~F12的鍵名稱 { b = true; keyvalue = k.Substring(1, 1); return; } if (k.Contains("Menu")) { b = true; keyvalue = "Alt"; return; } if (k.Contains("OemMinus")) { b = true; keyvalue = "_"; return; } if (k.Contains("Oem5")) { b = true; keyvalue = "\\"; return; } b = true; keyvalue = k;//返回除以上鍵值的鍵名稱 } private void button1_Click(object sender, EventArgs e) { //顯示當(dāng)前已設(shè)置的要屏蔽的熱鍵鍵值 HOOK.isSet = false; textBox1.Text = Arrstr[0]; textBox2.Text = Arrstr[1]; textBox3.Text = Arrstr[2]; textBox4.Text = Arrstr[3]; textBox5.Text = Arrstr[4]; textBox6.Text = Arrstr[5]; Hook.Stop(); Hook.Start(); } private void button2_Click(object sender, EventArgs e) { Arrstr[0] = textBox1.Text; Arrstr[1] = textBox2.Text; Arrstr[2] = textBox3.Text; Arrstr[3] = textBox4.Text; Arrstr[4] = textBox5.Text; Arrstr[5] = textBox6.Text; HOOK.isSet = true; HOOK.isHotkey = true; Hook.Stop(); Hook.Start(); } private void button3_Click(object sender, EventArgs e) { textBox1.Clear(); } private void button4_Click(object sender, EventArgs e) { textBox2.Clear(); } private void button5_Click(object sender, EventArgs e) { textBox3.Clear(); } private void button6_Click(object sender, EventArgs e) { textBox4.Clear(); } private void button7_Click(object sender, EventArgs e) { textBox5.Clear(); } private void button8_Click(object sender, EventArgs e) { textBox6.Clear(); } private void button9_Click(object sender, EventArgs e) { HOOK.isHotkey = false; textBox7.Text = ArrHotkey[0, 0]; textBox8.Text = ArrHotkey[0, 1]; textBox9.Text = ArrHotkey[1, 0]; textBox10.Text = ArrHotkey[1, 1]; textBox11.Text = ArrHotkey[2, 0]; textBox12.Text = ArrHotkey[2, 1]; Hook.Stop(); Hook.Start(); } private void button12_Click(object sender, EventArgs e) { openFileDialog1.FileName = ""; if (openFileDialog1.ShowDialog() == DialogResult.OK) textBox8.Text = openFileDialog1.FileName; } private void button15_Click(object sender, EventArgs e) { openFileDialog1.FileName = ""; if (openFileDialog1.ShowDialog() == DialogResult.OK) textBox10.Text = openFileDialog1.FileName; } private void button16_Click(object sender, EventArgs e) { openFileDialog1.FileName = ""; if (openFileDialog1.ShowDialog() == DialogResult.OK) textBox12.Text = openFileDialog1.FileName; } private void button10_Click(object sender, EventArgs e) { ArrHotkey[0, 0] = textBox7.Text; ArrHotkey[0, 1] = textBox8.Text; ArrHotkey[1, 0] = textBox9.Text; ArrHotkey[1, 1] = textBox10.Text; ArrHotkey[2, 0] = textBox11.Text; ArrHotkey[2, 1] = textBox12.Text; HOOK.isSet = true; HOOK.isHotkey = true; Hook.Stop(); Hook.Start(); } private void tabControl1_Click(object sender, EventArgs e) { if (tabControl1.SelectedTab.Name == "tabPage1") istabPage = true; else istabPage = false; } private void button11_Click(object sender, EventArgs e) { textBox7.Clear(); } private void button13_Click(object sender, EventArgs e) { textBox9.Clear(); } private void button14_Click(object sender, EventArgs e) { textBox11.Clear(); } }
class HOOK { #region 私有變量 /// <summary> /// 鍵盤鉤子句柄 /// </summary> private IntPtr m_pKeyboardHook = IntPtr.Zero; /// <summary> /// 鉤子委托聲明 /// </summary> /// <param name="nCode"></param> /// <param name="wParam"></param> /// <param name="lParam"></param> /// <returns></returns> public delegate int HookProc(int nCode, Int32 wParam, IntPtr lParam); /// <summary> /// 鍵盤鉤子委托實(shí)例 /// </summary> private HookProc m_KeyboardHookProcedure; /// <summary> /// 底層的鉤子變量 /// </summary> public const int idHook = 13; /// <summary> /// 安裝鉤子 /// </summary> /// <param name="idHook"></param> /// <param name="lpfn"></param> /// <param name="hInstance"></param> /// <param name="threadId"></param> /// <returns></returns> [DllImport("user32.dll", CallingConvention = CallingConvention.StdCall)] public static extern IntPtr SetWindowsHookEx(int idHook, HookProc lpfn, IntPtr pInstance, int threadId); /// <summary> /// 卸載鉤子 /// </summary> /// <param name="idHook"></param> /// <returns></returns> [DllImport("user32.dll", CallingConvention = CallingConvention.StdCall)] public static extern bool UnhookWindowsHookEx(IntPtr pHookHandle); /// <summary> /// 傳遞鉤子 /// </summary> /// <param name="pHookHandle">是您自己的鉤子函數(shù)的句柄。用該句柄可以遍歷鉤子鏈</param> /// <param name="nCode">把傳入的參數(shù)簡單傳給CallNextHookEx即可</param> /// <param name="wParam">把傳入的參數(shù)簡單傳給CallNextHookEx即可</param> /// <param name="lParam"></param> /// <returns></returns> [DllImport("user32.dll", CallingConvention = CallingConvention.StdCall)] public static extern int CallNextHookEx(IntPtr pHookHandle, int nCode, Int32 wParam, IntPtr lParam); [StructLayout(LayoutKind.Sequential)] public struct KeyMSG { public int vkCode; public int scanCode; public int flags; public int time; public int dwExtraInfo; } protected const int WM_QUERYENDSESSION = 0x0011; protected const int WM_KEYDOWN = 0x100; protected const int WM_KEYUP = 0x101; protected const int WM_SYSKEYDOWN = 0x104; protected const int WM_SYSKEYUP = 0x105; protected const byte VK_SHIFT = 0x10; protected const byte VK_CAPITAL = 0x14; protected const byte VK_NUMLOCK = 0x90; protected const byte VK_LSHIFT = 0xA0; protected const byte VK_RSHIFT = 0xA1; protected const int VK_LWIN = 91; protected const int VK_RWIN = 92; protected const byte VK_LCONTROL = 0xA2; protected const byte VK_RCONTROL = 0x3; protected const byte VK_LALT = 0xA4; protected const byte VK_RALT = 0xA5; protected const byte LLKHF_ALTDOWN = 0x20; public bool Porwer = true;//是否屏蔽Porwer鍵 public static int pp = 0;//熱鍵的返回值 public static bool isSet = false;//是否設(shè)置屏蔽熱鍵,false為設(shè)置屏蔽的熱鍵 public static bool isHotkey = false; public static bool isInstall = false;//是否安裝鉤子,true為安裝 #endregion #region 事件的聲明 public event KeyEventHandler KeyDown;//鍵盤按下事件 public event KeyEventHandler KeyUp;//鍵盤松開事件 public event KeyPressEventHandler KeyPress;//鍵盤單擊事件 #endregion #region 方法 /// <summary> /// 鉤子捕獲消息后,對消息進(jìn)行處理 /// </summary> /// <param nCode="int">標(biāo)識,鍵盤是否操作</param> /// <param wParam="int">鍵盤的操作值</param> /// <param lParam="IntPtr">指針</param> private int KeyboardHookProc(int nCode, int wParam, IntPtr lParam) { if (nCode > -1 && (KeyDown != null || KeyUp != null || KeyPress != null)) { KeyMSG keyboardHookStruct = (KeyMSG)Marshal.PtrToStructure(lParam, typeof(KeyMSG));//獲取鉤子的相關(guān)信息 KeyEventArgs e = new KeyEventArgs((Keys)(keyboardHookStruct.vkCode));//獲取KeyEventArgs事件的相磁信息 switch (wParam) { case WM_KEYDOWN://鍵盤按下操作 case WM_SYSKEYDOWN: if (KeyDown != null)//如果加載了當(dāng)前事件 { KeyDown(this, e);//調(diào)用該事件 } break; case WM_KEYUP://鍵盤松開操作 case WM_SYSKEYUP: if (KeyUp != null)//如果加載了當(dāng)前事件 { KeyUp(this, e);//調(diào)用該事件 } break; } } return pp;//是否屏蔽當(dāng)前熱鍵,1為屏蔽,2為執(zhí)行 } #endregion #region 安裝、卸載鉤子 /// <summary> /// 安裝鉤子 /// </summary> /// <returns>是否安裝成功</returns> public bool Start() { IntPtr pInstance = (IntPtr)4194304;//鉤子所在實(shí)例的句柄 if (this.m_pKeyboardHook == IntPtr.Zero)//如果鍵盤的句柄為空 { this.m_KeyboardHookProcedure = new HookProc(KeyboardHookProc);//聲明一個托管鉤子 this.m_pKeyboardHook = SetWindowsHookEx(idHook, m_KeyboardHookProcedure, pInstance, 0);//安裝鉤子 if (this.m_pKeyboardHook == IntPtr.Zero)//如果安裝失敗 { this.Stop();//卸載鉤子 return false; } } isInstall = true;//安裝了鉤子 return true; } /// <summary> /// 卸載鉤子 /// </summary> /// <returns>是否卸載成功</returns> public bool Stop() { if (isInstall == false)//如果沒有安裝鉤子 { return true; } bool result = true; if (this.m_pKeyboardHook != IntPtr.Zero)//如果安裝了鉤子 { result = (UnhookWindowsHookEx(this.m_pKeyboardHook) && result);//卸載鉤子 this.m_pKeyboardHook = IntPtr.Zero;//清空鍵盤的鉤子句柄 } return result; } #endregion 公共方法 }
partial class Form1 { /// <summary> /// 必需的設(shè)計器變量。 /// </summary> private System.ComponentModel.IContainer components = null; /// <summary> /// 清理所有正在使用的資源。 /// </summary> /// <param name="disposing">如果應(yīng)釋放托管資源,為 true;否則為 false。</param> protected override void Dispose(bool disposing) { if (disposing && (components != null)) { components.Dispose(); } base.Dispose(disposing); } #region Windows 窗體設(shè)計器生成的代碼 /// <summary> /// 設(shè)計器支持所需的方法 - 不要 /// 使用代碼編輯器修改此方法的內(nèi)容。 /// </summary> private void InitializeComponent() { this.tabControl1 = new System.Windows.Forms.TabControl(); this.tabPage1 = new System.Windows.Forms.TabPage(); this.button8 = new System.Windows.Forms.Button(); this.button7 = new System.Windows.Forms.Button(); this.button6 = new System.Windows.Forms.Button(); this.button5 = new System.Windows.Forms.Button(); this.button4 = new System.Windows.Forms.Button(); this.button3 = new System.Windows.Forms.Button(); this.button2 = new System.Windows.Forms.Button(); this.button1 = new System.Windows.Forms.Button(); this.label6 = new System.Windows.Forms.Label(); this.label5 = new System.Windows.Forms.Label(); this.label4 = new System.Windows.Forms.Label(); this.label3 = new System.Windows.Forms.Label(); this.label2 = new System.Windows.Forms.Label(); this.label1 = new System.Windows.Forms.Label(); this.textBox6 = new System.Windows.Forms.TextBox(); this.textBox5 = new System.Windows.Forms.TextBox(); this.textBox4 = new System.Windows.Forms.TextBox(); this.textBox3 = new System.Windows.Forms.TextBox(); this.textBox2 = new System.Windows.Forms.TextBox(); this.textBox1 = new System.Windows.Forms.TextBox(); this.tabPage2 = new System.Windows.Forms.TabPage(); this.button16 = new System.Windows.Forms.Button(); this.button15 = new System.Windows.Forms.Button(); this.button14 = new System.Windows.Forms.Button(); this.button13 = new System.Windows.Forms.Button(); this.button12 = new System.Windows.Forms.Button(); this.button11 = new System.Windows.Forms.Button(); this.button10 = new System.Windows.Forms.Button(); this.button9 = new System.Windows.Forms.Button(); this.textBox12 = new System.Windows.Forms.TextBox(); this.textBox11 = new System.Windows.Forms.TextBox(); this.label12 = new System.Windows.Forms.Label(); this.label11 = new System.Windows.Forms.Label(); this.label10 = new System.Windows.Forms.Label(); this.textBox10 = new System.Windows.Forms.TextBox(); this.textBox9 = new System.Windows.Forms.TextBox(); this.textBox8 = new System.Windows.Forms.TextBox(); this.textBox7 = new System.Windows.Forms.TextBox(); this.label9 = new System.Windows.Forms.Label(); this.label8 = new System.Windows.Forms.Label(); this.label7 = new System.Windows.Forms.Label(); this.openFileDialog1 = new System.Windows.Forms.OpenFileDialog(); this.tabControl1.SuspendLayout(); this.tabPage1.SuspendLayout(); this.tabPage2.SuspendLayout(); this.SuspendLayout(); // // tabControl1 // this.tabControl1.Controls.Add(this.tabPage1); this.tabControl1.Controls.Add(this.tabPage2); this.tabControl1.Location = new System.Drawing.Point(6, 5); this.tabControl1.Name = "tabControl1"; this.tabControl1.SelectedIndex = 0; this.tabControl1.Size = new System.Drawing.Size(252, 233); this.tabControl1.TabIndex = 0; this.tabControl1.Click += new System.EventHandler(this.tabControl1_Click); // // tabPage1 // this.tabPage1.Controls.Add(this.button8); this.tabPage1.Controls.Add(this.button7); this.tabPage1.Controls.Add(this.button6); this.tabPage1.Controls.Add(this.button5); this.tabPage1.Controls.Add(this.button4); this.tabPage1.Controls.Add(this.button3); this.tabPage1.Controls.Add(this.button2); this.tabPage1.Controls.Add(this.button1); this.tabPage1.Controls.Add(this.label6); this.tabPage1.Controls.Add(this.label5); this.tabPage1.Controls.Add(this.label4); this.tabPage1.Controls.Add(this.label3); this.tabPage1.Controls.Add(this.label2); this.tabPage1.Controls.Add(this.label1); this.tabPage1.Controls.Add(this.textBox6); this.tabPage1.Controls.Add(this.textBox5); this.tabPage1.Controls.Add(this.textBox4); this.tabPage1.Controls.Add(this.textBox3); this.tabPage1.Controls.Add(this.textBox2); this.tabPage1.Controls.Add(this.textBox1); this.tabPage1.Location = new System.Drawing.Point(4, 21); this.tabPage1.Name = "tabPage1"; this.tabPage1.Padding = new System.Windows.Forms.Padding(3); this.tabPage1.Size = new System.Drawing.Size(244, 208); this.tabPage1.TabIndex = 0; this.tabPage1.Text = "屏蔽熱鍵"; this.tabPage1.UseVisualStyleBackColor = true; // // button8 // this.button8.Location = new System.Drawing.Point(198, 148); this.button8.Name = "button8"; this.button8.Size = new System.Drawing.Size(35, 23); this.button8.TabIndex = 22; this.button8.Text = "Del"; this.button8.UseVisualStyleBackColor = true; this.button8.Click += new System.EventHandler(this.button8_Click); // // button7 // this.button7.Location = new System.Drawing.Point(198, 123); this.button7.Name = "button7"; this.button7.Size = new System.Drawing.Size(35, 23); this.button7.TabIndex = 21; this.button7.Text = "Del"; this.button7.UseVisualStyleBackColor = true; this.button7.Click += new System.EventHandler(this.button7_Click); // // button6 // this.button6.Location = new System.Drawing.Point(198, 96); this.button6.Name = "button6"; this.button6.Size = new System.Drawing.Size(35, 23); this.button6.TabIndex = 20; this.button6.Text = "Del"; this.button6.UseVisualStyleBackColor = true; this.button6.Click += new System.EventHandler(this.button6_Click); // // button5 // this.button5.Location = new System.Drawing.Point(198, 69); this.button5.Name = "button5"; this.button5.Size = new System.Drawing.Size(35, 23); this.button5.TabIndex = 19; this.button5.Text = "Del"; this.button5.UseVisualStyleBackColor = true; this.button5.Click += new System.EventHandler(this.button5_Click); // // button4 // this.button4.Location = new System.Drawing.Point(198, 44); this.button4.Name = "button4"; this.button4.Size = new System.Drawing.Size(35, 23); this.button4.TabIndex = 18; this.button4.Text = "Del"; this.button4.UseVisualStyleBackColor = true; this.button4.Click += new System.EventHandler(this.button4_Click); // // button3 // this.button3.Location = new System.Drawing.Point(198, 18); this.button3.Name = "button3"; this.button3.Size = new System.Drawing.Size(35, 23); this.button3.TabIndex = 17; this.button3.Text = "Del"; this.button3.UseVisualStyleBackColor = true; this.button3.Click += new System.EventHandler(this.button3_Click); // // button2 // this.button2.Location = new System.Drawing.Point(158, 179); this.button2.Name = "button2"; this.button2.Size = new System.Drawing.Size(75, 23); this.button2.TabIndex = 16; this.button2.Text = "確定"; this.button2.UseVisualStyleBackColor = true; this.button2.Click += new System.EventHandler(this.button2_Click); // // button1 // this.button1.Location = new System.Drawing.Point(77, 179); this.button1.Name = "button1"; this.button1.Size = new System.Drawing.Size(75, 23); this.button1.TabIndex = 15; this.button1.Text = "設(shè)置"; this.button1.UseVisualStyleBackColor = true; this.button1.Click += new System.EventHandler(this.button1_Click); // // label6 // this.label6.AutoSize = true; this.label6.Location = new System.Drawing.Point(13, 155); this.label6.Name = "label6"; this.label6.Size = new System.Drawing.Size(65, 12); this.label6.TabIndex = 14; this.label6.Text = "屏蔽熱鍵:"; // // label5 // this.label5.AutoSize = true; this.label5.Location = new System.Drawing.Point(13, 129); this.label5.Name = "label5"; this.label5.Size = new System.Drawing.Size(65, 12); this.label5.TabIndex = 13; this.label5.Text = "屏蔽熱鍵:"; // // label4 // this.label4.AutoSize = true; this.label4.Location = new System.Drawing.Point(13, 103); this.label4.Name = "label4"; this.label4.Size = new System.Drawing.Size(65, 12); this.label4.TabIndex = 12; this.label4.Text = "屏蔽熱鍵:"; // // label3 // this.label3.AutoSize = true; this.label3.Location = new System.Drawing.Point(13, 77); this.label3.Name = "label3"; this.label3.Size = new System.Drawing.Size(65, 12); this.label3.TabIndex = 11; this.label3.Text = "屏蔽熱鍵:"; // // label2 // this.label2.AutoSize = true; this.label2.Location = new System.Drawing.Point(13, 51); this.label2.Name = "label2"; this.label2.Size = new System.Drawing.Size(65, 12); this.label2.TabIndex = 10; this.label2.Text = "屏蔽熱鍵:"; // // label1 // this.label1.AutoSize = true; this.label1.Location = new System.Drawing.Point(13, 25); this.label1.Name = "label1"; this.label1.Size = new System.Drawing.Size(65, 12); this.label1.TabIndex = 9; this.label1.Text = "屏蔽熱鍵:"; // // textBox6 // this.textBox6.Location = new System.Drawing.Point(84, 149); this.textBox6.Name = "textBox6"; this.textBox6.Size = new System.Drawing.Size(108, 21); this.textBox6.TabIndex = 8; // // textBox5 // this.textBox5.Location = new System.Drawing.Point(84, 123); this.textBox5.Name = "textBox5"; this.textBox5.Size = new System.Drawing.Size(108, 21); this.textBox5.TabIndex = 7; // // textBox4 // this.textBox4.Location = new System.Drawing.Point(84, 97); this.textBox4.Name = "textBox4"; this.textBox4.Size = new System.Drawing.Size(108, 21); this.textBox4.TabIndex = 6; // // textBox3 // this.textBox3.Location = new System.Drawing.Point(84, 71); this.textBox3.Name = "textBox3"; this.textBox3.Size = new System.Drawing.Size(108, 21); this.textBox3.TabIndex = 5; // // textBox2 // this.textBox2.Location = new System.Drawing.Point(84, 45); this.textBox2.Name = "textBox2"; this.textBox2.Size = new System.Drawing.Size(108, 21); this.textBox2.TabIndex = 4; // // textBox1 // this.textBox1.Location = new System.Drawing.Point(84, 19); this.textBox1.Name = "textBox1"; this.textBox1.Size = new System.Drawing.Size(108, 21); this.textBox1.TabIndex = 3; // // tabPage2 // this.tabPage2.Controls.Add(this.button16); this.tabPage2.Controls.Add(this.button15); this.tabPage2.Controls.Add(this.button14); this.tabPage2.Controls.Add(this.button13); this.tabPage2.Controls.Add(this.button12); this.tabPage2.Controls.Add(this.button11); this.tabPage2.Controls.Add(this.button10); this.tabPage2.Controls.Add(this.button9); this.tabPage2.Controls.Add(this.textBox12); this.tabPage2.Controls.Add(this.textBox11); this.tabPage2.Controls.Add(this.label12); this.tabPage2.Controls.Add(this.label11); this.tabPage2.Controls.Add(this.label10); this.tabPage2.Controls.Add(this.textBox10); this.tabPage2.Controls.Add(this.textBox9); this.tabPage2.Controls.Add(this.textBox8); this.tabPage2.Controls.Add(this.textBox7); this.tabPage2.Controls.Add(this.label9); this.tabPage2.Controls.Add(this.label8); this.tabPage2.Controls.Add(this.label7); this.tabPage2.Location = new System.Drawing.Point(4, 21); this.tabPage2.Name = "tabPage2"; this.tabPage2.Padding = new System.Windows.Forms.Padding(3); this.tabPage2.Size = new System.Drawing.Size(244, 208); this.tabPage2.TabIndex = 1; this.tabPage2.Text = "設(shè)置熱鍵"; this.tabPage2.UseVisualStyleBackColor = true; // // button16 // this.button16.Location = new System.Drawing.Point(200, 144); this.button16.Name = "button16"; this.button16.Size = new System.Drawing.Size(36, 23); this.button16.TabIndex = 19; this.button16.Text = "..."; this.button16.UseVisualStyleBackColor = true; this.button16.Click += new System.EventHandler(this.button16_Click); // // button15 // this.button15.Location = new System.Drawing.Point(200, 91); this.button15.Name = "button15"; this.button15.Size = new System.Drawing.Size(36, 23); this.button15.TabIndex = 18; this.button15.Text = "..."; this.button15.UseVisualStyleBackColor = true; this.button15.Click += new System.EventHandler(this.button15_Click); // // button14 // this.button14.Location = new System.Drawing.Point(200, 118); this.button14.Name = "button14"; this.button14.Size = new System.Drawing.Size(36, 23); this.button14.TabIndex = 17; this.button14.Text = "Del"; this.button14.UseVisualStyleBackColor = true; this.button14.Click += new System.EventHandler(this.button14_Click); // // button13 // this.button13.Location = new System.Drawing.Point(200, 66); this.button13.Name = "button13"; this.button13.Size = new System.Drawing.Size(36, 23); this.button13.TabIndex = 16; this.button13.Text = "Del"; this.button13.UseVisualStyleBackColor = true; this.button13.Click += new System.EventHandler(this.button13_Click); // // button12 // this.button12.Location = new System.Drawing.Point(200, 41); this.button12.Name = "button12"; this.button12.Size = new System.Drawing.Size(36, 23); this.button12.TabIndex = 15; this.button12.Text = "..."; this.button12.UseVisualStyleBackColor = true; this.button12.Click += new System.EventHandler(this.button12_Click); // // button11 // this.button11.Location = new System.Drawing.Point(200, 15); this.button11.Name = "button11"; this.button11.Size = new System.Drawing.Size(36, 23); this.button11.TabIndex = 14; this.button11.Text = "Del"; this.button11.UseVisualStyleBackColor = true; this.button11.Click += new System.EventHandler(this.button11_Click); // // button10 // this.button10.Location = new System.Drawing.Point(161, 176); this.button10.Name = "button10"; this.button10.Size = new System.Drawing.Size(75, 23); this.button10.TabIndex = 13; this.button10.Text = "確定"; this.button10.UseVisualStyleBackColor = true; this.button10.Click += new System.EventHandler(this.button10_Click); // // button9 // this.button9.Location = new System.Drawing.Point(82, 176); this.button9.Name = "button9"; this.button9.Size = new System.Drawing.Size(75, 23); this.button9.TabIndex = 12; this.button9.Text = "設(shè)置"; this.button9.UseVisualStyleBackColor = true; this.button9.Click += new System.EventHandler(this.button9_Click); // // textBox12 // this.textBox12.Location = new System.Drawing.Point(56, 145); this.textBox12.Name = "textBox12"; this.textBox12.Size = new System.Drawing.Size(138, 21); this.textBox12.TabIndex = 11; // // textBox11 // this.textBox11.Location = new System.Drawing.Point(82, 119); this.textBox11.Name = "textBox11"; this.textBox11.Size = new System.Drawing.Size(112, 21); this.textBox11.TabIndex = 10; // // label12 // this.label12.AutoSize = true; this.label12.Location = new System.Drawing.Point(9, 151); this.label12.Name = "label12"; this.label12.Size = new System.Drawing.Size(41, 12); this.label12.TabIndex = 9; this.label12.Text = "任務(wù):"; // // label11 // this.label11.AutoSize = true; this.label11.Location = new System.Drawing.Point(9, 125); this.label11.Name = "label11"; this.label11.Size = new System.Drawing.Size(65, 12); this.label11.TabIndex = 8; this.label11.Text = "設(shè)置熱鍵:"; // // label10 // this.label10.AutoSize = true; this.label10.Location = new System.Drawing.Point(9, 47); this.label10.Name = "label10"; this.label10.Size = new System.Drawing.Size(41, 12); this.label10.TabIndex = 7; this.label10.Text = "任務(wù):"; // // textBox10 // this.textBox10.Location = new System.Drawing.Point(56, 92); this.textBox10.Name = "textBox10"; this.textBox10.Size = new System.Drawing.Size(138, 21); this.textBox10.TabIndex = 6; // // textBox9 // this.textBox9.Location = new System.Drawing.Point(82, 67); this.textBox9.Name = "textBox9"; this.textBox9.Size = new System.Drawing.Size(112, 21); this.textBox9.TabIndex = 5; // // textBox8 // this.textBox8.Location = new System.Drawing.Point(56, 42); this.textBox8.Name = "textBox8"; this.textBox8.Size = new System.Drawing.Size(138, 21); this.textBox8.TabIndex = 4; // // textBox7 // this.textBox7.Location = new System.Drawing.Point(82, 16); this.textBox7.Name = "textBox7"; this.textBox7.Size = new System.Drawing.Size(112, 21); this.textBox7.TabIndex = 3; // // label9 // this.label9.AutoSize = true; this.label9.Location = new System.Drawing.Point(9, 98); this.label9.Name = "label9"; this.label9.Size = new System.Drawing.Size(41, 12); this.label9.TabIndex = 2; this.label9.Text = "任務(wù):"; // // label8 // this.label8.AutoSize = true; this.label8.Location = new System.Drawing.Point(9, 72); this.label8.Name = "label8"; this.label8.Size = new System.Drawing.Size(65, 12); this.label8.TabIndex = 1; this.label8.Text = "設(shè)置熱鍵:"; // // label7 // this.label7.AutoSize = true; this.label7.Location = new System.Drawing.Point(9, 22); this.label7.Name = "label7"; this.label7.Size = new System.Drawing.Size(65, 12); this.label7.TabIndex = 0; this.label7.Text = "設(shè)置熱鍵:"; // // openFileDialog1 // this.openFileDialog1.FileName = "openFileDialog1"; // // Form1 // this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(262, 242); this.Controls.Add(this.tabControl1); this.Name = "Form1"; this.Text = "設(shè)置或屏蔽熱鍵"; this.Load += new System.EventHandler(this.Form1_Load); this.FontChanged += new System.EventHandler(this.Form1_FontChanged); this.tabControl1.ResumeLayout(false); this.tabPage1.ResumeLayout(false); this.tabPage1.PerformLayout(); this.tabPage2.ResumeLayout(false); this.tabPage2.PerformLayout(); this.ResumeLayout(false); } #endregion private System.Windows.Forms.TabControl tabControl1; private System.Windows.Forms.TabPage tabPage1; private System.Windows.Forms.TabPage tabPage2; private System.Windows.Forms.TextBox textBox5; private System.Windows.Forms.TextBox textBox4; private System.Windows.Forms.TextBox textBox3; private System.Windows.Forms.TextBox textBox2; private System.Windows.Forms.TextBox textBox1; private System.Windows.Forms.Label label6; private System.Windows.Forms.Label label5; private System.Windows.Forms.Label label4; private System.Windows.Forms.Label label3; private System.Windows.Forms.Label label2; private System.Windows.Forms.Label label1; private System.Windows.Forms.TextBox textBox6; private System.Windows.Forms.Button button2; private System.Windows.Forms.Button button1; private System.Windows.Forms.Button button3; private System.Windows.Forms.Button button8; private System.Windows.Forms.Button button7; private System.Windows.Forms.Button button6; private System.Windows.Forms.Button button5; private System.Windows.Forms.Button button4; private System.Windows.Forms.TextBox textBox10; private System.Windows.Forms.TextBox textBox9; private System.Windows.Forms.TextBox textBox8; private System.Windows.Forms.TextBox textBox7; private System.Windows.Forms.Label label9; private System.Windows.Forms.Label label8; private System.Windows.Forms.Label label7; private System.Windows.Forms.TextBox textBox12; private System.Windows.Forms.TextBox textBox11; private System.Windows.Forms.Label label12; private System.Windows.Forms.Label label11; private System.Windows.Forms.Label label10; private System.Windows.Forms.Button button16; private System.Windows.Forms.Button button15; private System.Windows.Forms.Button button14; private System.Windows.Forms.Button button13; private System.Windows.Forms.Button button12; private System.Windows.Forms.Button button11; private System.Windows.Forms.Button button10; private System.Windows.Forms.Button button9; private System.Windows.Forms.OpenFileDialog openFileDialog1; }
到此這篇關(guān)于C#實(shí)現(xiàn)設(shè)置或屏蔽熱鍵的方法詳解的文章就介紹到這了,更多相關(guān)C#熱鍵內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
UGUI實(shí)現(xiàn)隨意調(diào)整Text中的字體間距
這篇文章主要為大家詳細(xì)介紹了UGUI實(shí)現(xiàn)隨意調(diào)整字體間距的方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下2019-03-03C#中DataSet轉(zhuǎn)化為實(shí)體集合類的方法
這篇文章主要介紹了C#中DataSet轉(zhuǎn)化為實(shí)體集合類的方法,是非常實(shí)用的技巧,需要的朋友可以參考下2014-10-10C#調(diào)用usb攝像頭的實(shí)現(xiàn)方法
這篇文章主要介紹了C#調(diào)用usb攝像頭的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02c#創(chuàng)建vc可調(diào)用的com組件方法分享
本文詳細(xì)闡述如何用C#創(chuàng)建一個COM組件,并能用VC6.0等調(diào)用,大家參考使用2013-12-12C# Split分隔字符串的應(yīng)用(C#、split、分隔、字符串)
C# Split分隔字符串主要包括用字符串分隔,用多個字符來分隔,用單個字符來分隔等方法實(shí)現(xiàn),下面的具體的實(shí)現(xiàn)代碼2008-11-11C#怎樣實(shí)現(xiàn)文件下載斷點(diǎn)續(xù)傳
這篇文章主要介紹了C#怎樣實(shí)現(xiàn)文件下載斷點(diǎn)續(xù)傳,對斷點(diǎn)續(xù)傳感興趣的同學(xué),可以參考下2021-04-04C# log4net 日志輸出的實(shí)現(xiàn)示例
本文主要介紹了C# log4net 日志輸出的實(shí)現(xiàn)示例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-10-10DevExpress之ChartControl創(chuàng)建Drill-Down樣式的Title實(shí)例
這篇文章主要介紹了DevExpress之ChartControl創(chuàng)建Drill-Down樣式的Title實(shí)現(xiàn)方法,以實(shí)例形式講述了創(chuàng)建Drill-Down樣式的Title原理與實(shí)現(xiàn)過程,需要的朋友可以參考下2014-10-10