2017-03-08 69 views
0

我被要求要創造一個有兩個組合框WinForm應用程序創建自定義的熱鍵。
第一個框包含像按Ctrl + Alt鍵的選項按Ctrl + ShiftALT + SHIFT。第二個框中包含來自a-z和數字0-9 ..
的字母表格還包含一個名爲「Register」的按鈕。我的任務是,當我點擊註冊按鈕時,組合框中選擇的選項必須被視爲熱鍵,並且它應該被註冊。請幫助我解決這個問題,因爲我對這項技術很陌生。我怎麼使用的WinForms

private void button1_Click(object sender, EventArgs e) 
{ 
    if (comboBox1.SelectedItem.ToString() != str && comboBox3.SelectedItem.ToString() != s) 
    { 
     str = comboBox1.SelectedItem.ToString(); 
     byte str1 = (byte)(str)[0]; 
     s = comboBox3.SelectedItem.ToString(); 
     byte s1 = (byte)(s)[0]; 
     RegisterHotKey(this.Handle, this.GetType().GetHashCode(), Win32Modifiers, s1); 
    } 
    base.WndProc(ref msg); 
} 

protected override void WndProc(ref Message m) 
{ 
    if(m.Msg == ) 
    base.WndProc(ref m); 
} 

這是我到目前爲止

+2

的可能的複製【最佳方式來實現鍵盤快捷鍵在Windows窗體應用程序?(http://stackoverflow.com/questions/400113/best-way-to-implement-keyboard-shortcuts-in-a-windows -forms-application) –

+1

親切,給出一個出發點,你的進步和遇到困難的點。到目前爲止,問題描述過於寬泛。人們不會在這裏爲你寫整個代碼 –

+0

這些熱鍵應該只註冊到你的應用程序還是全局熱鍵? –

回答

0

我會去通過這個模擬只選擇按下按鍵一樣。比如如何和自動打字機會。 C# Simulate Key Press 檢查了這一點,看看您是否可以從那裏弄明白。 祝你好運。