दिलचस्प पोस्ट
कैसे एक समारोह के लिए एक तर्क के रूप में सरणी को पारित करने के लिए bash क्या कोई कार्यक्रम तय करने का एक तरीका है कि कोई फ़ॉन्ट फ़ाइल विशिष्ट यूनिकोड ग्लिफ़ है या नहीं? क्या 0 का एक HTTP स्थिति कोड का कोई अर्थ है? कैसे UINavigationBar 1px नीचे पंक्ति छिपाने के लिए मैं जावा में एक विशिष्ट श्रेणी के भीतर यादृच्छिक पूर्णांक कैसे उत्पन्न करूं? अजगर इंडेंटेशन को ठीक कैसे करें एएस 3 में ईवेंट श्रोता के लिए एक पैरामीटर को सरल तरीके से पास करने के लिए … क्या यह मौजूद है? एक वादा ब्लॉक से समारोह में लौटें मूल्य सॉफ्टवेयर रेंडरिंग मोड – WPF जब मैं "रन" कमांड को निष्पादित करता हूँ तो मैं कैसे उपयोग करता है डिफ़ॉल्ट पोर्ट (9000) को बदल सकता हूँ? $ .param () JavaScript / jQuery में व्युत्क्रम फ़ंक्शन PHP वेबपेज में "12 मिनट पहले" आदि कैसे प्रदर्शित करें? एमडी 5 डीकोडिंग वे यह कैसे करते हैं? बैश चर गुंजाइश एप्पल MacOS 10.7 (शेर) में ओपनएसएसएल का उपयोग क्यों कर रहा है?

मैं कैसे जांचूं कि उपयोगकर्ता कुंजी दबा रहा है?

जावा में मेरे पास एक ऐसा कार्यक्रम है जिसे लगातार जांचना पड़ता है अगर कोई उपयोगकर्ता कुंजी दबा रहा हो तो psuedocode में, जैसे कुछ चीजें

if (isPressing("w")) { //do somthing } 

अग्रिम में धन्यवाद!

वेब के समाधान से एकत्रित समाधान "मैं कैसे जांचूं कि उपयोगकर्ता कुंजी दबा रहा है?"

जावा में आप जांच नहीं करते हैं कि कोई कुंजी दबायी जाती है, बजाय आप KeyEvent को सुनें अपने लक्ष्य को प्राप्त करने का सही तरीका एक KeyEventDispatcher रजिस्टर करना है, और इसे वांछित कुंजी की स्थिति बनाए रखने के लिए लागू करना है:

 import java.awt.KeyEventDispatcher; import java.awt.KeyboardFocusManager; import java.awt.event.KeyEvent; public class IsKeyPressed { private static volatile boolean wPressed = false; public static boolean isWPressed() { synchronized (IsKeyPressed.class) { return wPressed; } } public static void main(String[] args) { KeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(new KeyEventDispatcher() { @Override public boolean dispatchKeyEvent(KeyEvent ke) { synchronized (IsKeyPressed.class) { switch (ke.getID()) { case KeyEvent.KEY_PRESSED: if (ke.getKeyCode() == KeyEvent.VK_W) { wPressed = true; } break; case KeyEvent.KEY_RELEASED: if (ke.getKeyCode() == KeyEvent.VK_W) { wPressed = false; } break; } return false; } } }); } } 

तो आप हमेशा इसका उपयोग कर सकते हैं:

 if (IsKeyPressed.isWPressed()) { // do your thing. } 

आप निश्चित रूप से चाबी के मानचित्र के साथ isPressing("<some key>") लिए उसी विधि का उपयोग कर सकते हैं isPressing("<some key>") और उनके राज्य IsKeyPressed लिपटे हैं।

आपको KeyListener को लागू करना होगा, यहां एक नज़र डालें: http://docs.oracle.com/javase/7/docs/api/java/awt/event/KeyListener.html

इसे कैसे उपयोग करें इसके बारे में अधिक जानकारी: http://docs.oracle.com/javase/tutorial/uiswing/events/keylistener.html

आशा है कि यह काम करेगा:

  import java.awt.event.KeyAdapter; import java.awt.event.KeyEvent; import javax.swing.JFrame; import javax.swing.JTextField; public class Main { public static void main(String[] argv) throws Exception { JTextField textField = new JTextField(); textField.addKeyListener(new Keychecker()); JFrame jframe = new JFrame(); jframe.add(textField); jframe.setSize(400, 350); jframe.setVisible(true); } } class Keychecker extends KeyAdapter { @Override public void keyPressed(KeyEvent event) { char ch = event.getKeyChar(); System.out.println(event.getKeyChar()); } } }