是否有辦法找出哪些Keys或Keys組合必須按下才能獲得特定的字符。對'''''''這樣的字符很容易,但對其他字符卻不那麼容易,比如'。','_'或'ü'。任何想法 ?謝謝。從字符到system.windows.forms.keys
1
A
回答
0
這是'特殊字符'的full listing。這些實際上是字符實體,其中給出了一個字符的特定代碼。
這主要用於代碼將提供序列的HTML中,但在客戶端他們將看到字符實體。
在這裏更多的是可能重複的回答你的,How to convert from Virtual Key codes to System.Windows.Forms.Keys
編輯 還擁有字符如另一個重複「」這裏:How to convert a character in to equivalent System.Windows.Input.Key Enum value?
0
感謝您發佈的鏈接,我來到了一個解決方案,我張貼在這裏。輸入是一個字符,輸出是System.Windows.Forms.Keys的列表。第一個鍵是實際的鍵,列表中的其他鍵(如果有的話)是修飾鍵。
[DllImport("user32.dll")]
static extern short VkKeyScan(char ch);
public static List<Keys> FromCharacterToKeys(char c)
{
var key = BitConverter.GetBytes(VkKeyScan(c));
if (key[1] > 0)
{
var list = new List<Keys> {(Keys) key[0]};
list.AddRange(ConvertModifierByte(key[1]));
return list;
}
else
{
return new List<Keys> { (Keys)key[0] };
}
}
private static List<Keys> ConvertModifierByte(byte modifier)
{
switch ((short)modifier)
{
case 1:
return new List<Keys> { Keys.Shift };
case 2:
return new List<Keys> { Keys.Control };
case 4:
return new List<Keys> { Keys.Alt };
case 6:
return new List<Keys> { Keys.Control, Keys.Alt };
default:
return new List<Keys> { Keys.None };
}
}
相關問題
- 1. 轉換爲字符串,字符類型爲System.Windows.Forms.Keys
- 2. 如何將字符串值分配給System.Windows.Forms.Keys?
- 3. System.Windows.Forms.Keys - 低位或大寫?
- 4. 保存System.Windows.Forms.Keys作爲設置
- 5. System.Windows.Forms.Keys枚舉器中的AltGr
- 6. System.Windows.Forms.Keys作爲SendKeys.Send的參數
- 7. 從「字符*」到「字符」
- 8. 從字符串到數字
- 9. 如何從System.Windows.Forms.Keys獲取快捷方式文本代碼
- 10. 如何從虛擬鍵碼轉換爲System.Windows.Forms.Keys
- 11. 如何在System.Windows.Forms.Keys中使用變量?
- 12. 如何將'System.Windows.Input.Key'轉換爲'System.Windows.Forms.Keys'?
- 13. 什麼是System.Windows.Forms.Keys枚舉中的「OEM」鍵?
- 14. 讓字符串流從字符A讀到字符串B
- 15. JAVA:從字符串中讀取字符串到某個字符
- 16. 從字符串1替換字符到字符串2
- 17. 將字符串從字符串複製到字符串
- 18. 獲取字符從字符串列表索引到的字符
- 19. 從零到字符串
- 20. 從「爲const char *」到「字符*」
- 21. 找到並從字符串
- 22. 從PDf到字符串
- 23. 從寬到窄的字符
- 24. Java ArrayindexOutofBoundsException從字符到int
- 25. 從字符串到Blob
- 26. 從字符串到XML
- 27. 從Json字符串到XContentBuilder
- 28. 從無符號字符複製到無符號字符
- 29. 如何從字符串末尾刪除字符,直到達到某個字符?
- 30. 從字符串到字符串流到矢量<int>
也許這可以幫助的http://msdn.microsoft.com/en-us/library/ms646329 – V4Vendetta
可能重複[如何將一個字符轉換到等價System.Windows.Input.Key枚舉值?] (http://stackoverflow.com/questions/544141/how-to-convert-a-character-in-to-equivalent-system-windows-input-key-enum-value) –
給菲利普:不是重複的系統。 Windows.Input.Key!= System.Windows.Forms.Keys,但有趣的鏈接。謝謝 – user1472131