2010-07-29 8 views

उत्तर

1

वास्तव में विंडोज कुंजी की तरह कुंजी को ASCII मान नहीं है। केवल 'कुंजी' प्रिंट करने वाली कुंजी में ASCII मान होता है। Windows कुंजी आप या तो KeyDown या KeyUp घटनाओं का उपयोग करें और पता लगाने के लिए जो कुंजी कीकोड उपयोग करने के लिए इस कुंजी के लिए pressed.KeyCode था जैसे कुंजी पता लगाने के लिए 93.

पूर्व है: -

निजी उप txt_KeyDown (कीकोड पूर्णांक, शिफ्ट पूर्णांक के रूप में) के रूप में तो कीकोड = 93 तब MsgBox "93" तो अंत End Sub

+1

http://forums.bit-tech.net/showthread.php?t=76247 विटुअल कुंजी कोड: http://msdn.microsoft.com/en-us/library/ms645540 – NinjaCat

+0

मुझे अपने कीबोर्ड में निम्नानुसार कुंजीकोड मिला, बाएं विंडोज = 9 1 और दाएं विंडोज = 9 2 – Gangadhar

2

क्षमा करें, आप कीकोड उपयोग कर सकते हैं:

private void Form1_KeyDown(object sender, KeyEventArgs e) 
    { 
     if (e.KeyCode != Keys.LWin && e.KeyCode != Keys.RWin) 
      MessageBox.Show("Hello " + e.KeyData.ToString()); 
    } 
+0

या 'Keys.RWin'। – Oded

+0

ठीक है, यह तय है। धन्यवाद :) – Florian

+0

यह ठीक है लेकिन मैं विंडोज कुंजी कैसे अक्षम कर सकता हूं? – nectar

0

मैं काफी यकीन है कि वे ascii कोड नहीं है, लेकिन वे करते हैं कुंजी कोड है: VK_LWIN और VK_RWIN छोड़ दिया और सही एक के लिए।

तो Control.KeyDown में उदाहरण के लिए यदि आप एक KeyEventArgs एक KeyCode प्रॉपर्टी में आप Keys.LWin या Keys.RWin साथ तुलना कर सकते हैं है कि मिल जाएगा।

0

वहाँ एक ASCII-संहिता क्योंकि Winkey प्रिंट करने योग्य नहीं है नहीं है। हालांकि आप इन चाबियों के वर्चुअल कुंजी कोड as described in the msdn का उपयोग कर सकते हैं।

संबंधित मुद्दे