मेरे पास नेटबीन आईडीई में जावा स्विंग एप्लिकेशन है।KeyTypedEvent KeyEvent की KeyCode हमेशा 0 है?
मैं एक रूप बना दिया है और इस तरह के रूप में अपने विभिन्न नियंत्रण करने के लिए एक KeyListener संलग्न:
jButton1.addKeyListener(new java.awt.event.KeyAdapter() {
public void keyTyped(java.awt.event.KeyEvent evt) {
keyTypedEvent(evt);
}
});
और keyTypedEvent
इस तरह के रूप में परिभाषित किया जाता है:
private void keyTypedEvent(java.awt.event.KeyEvent evt)
{
System.out.println(evt);
appendDisplay(String.valueOf(evt.getKeyChar()));
}
मैं evt
करने के लिए एक println
जोड़ा क्या देखने के लिए होता है और यह सत्यापित करने के लिए कि मेरा कीलिस्टर काम करता है। जब मैं का निर्माण और अपने आवेदन चलाने के लिए, मैंने महसूस किया कि उत्पादन हमेशा evt.getKeyCode()
होने के लिए एक मेरी println keycode = 0
इसे प्रमाणित करने के, मैं बदल गया था करने के लिए लगता है और यह हमेशा वापस आ रहा है 0.
मैं हो सकता है पूरी तरह से बदल क्या कीकोड करता है, लेकिन मैंने सोचा कि यह Oracle के दस्तावेज़ यहां में मूल्यों के साथ coorespond होगा:
http://docs.oracle.com/javase/7/docs/api/constant-values.html#java.awt.event.KeyEvent.VK_ESCAPE
उदाहरण के लिए, VK_ESCAPE 27.
012 का अपना महत्व होता है
KeyListener प्रयोग न करें। या तो दस्तावेज़ लिस्टनर या स्विंग कुंजी बाइंडिंग का उपयोग करें। –