पर गोलीबारी नहीं कर रही है, इसने कुछ अलग दृष्टिकोणों की कोशिश की है लेकिन अब तक कोई सफलता नहीं है। बस मुझे आश्चर्य हुआ कि क्या मुझे कुछ याद आ रहा है। मेरे पास एक जेएसपीनर है जो कैलेंडर के साथ डेटसेलेक्टर विजेट का एक घटक है। यदि कैलेंडर कैलेंडर या जेएसपीनर ऊपर और नीचे तीरों का उपयोग करने के बजाय उपयोगकर्ता जेएसपीनर में कोई टेक्स्ट बदलता है तो मैं एक सत्यापन विधि को आग लगाने की कोशिश कर रहा हूं। वहाँ बाहरजावा कुंजीलिस्ट जेएसपीनर
jSpinner1.addKeyListener(kl);
jSpinner1.getEditor().addKeyListener(kl);
((JSpinner.DefaultEditor) jSpinner1.getEditor().getTextField().addKeyListener(kl);
किसी को भी मैं गलत क्या कर रहा है के रूप में किसी भी विचार हो गया है:
यहाँ विभिन्न दृष्टिकोणों मैं कोशिश की है कर रहे हैं? धन्यवाद
अद्यतन क्षमा याचना, मैंने कहा जाना चाहिए था कि मैं पहले से ही JSpinnerDateModel जो JSpinner से जुड़ा हुआ है के लिए एक ChangeListener जोड़ लिया है। इसलिए जैसा:
ChangeListener changeListener = new ChangeListener() {
@Override
public void stateChanged(ChangeEvent e) {
dateChanged();
}
};
jSpinnerDateModel.addChangeListener(changeListener);
KeyListener keyListener = new KeyListener() {
@Override
public void keyTyped(KeyEvent e) {
// TODO Auto-generated method stub
}
@Override
public void keyPressed(KeyEvent e) {
System.out.println(e.getKeyChar());
dateChanged();
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
}
};
((JSpinner.DefaultEditor) jSpinner1.getEditor()).getTextField().addKeyListener(
keyListener);
धन्यवाद
फ्रैंक
मूल जानकारी में इस जानकारी को शामिल करने के लिए क्षमा नहीं (मैंने इसे अभी अपडेट किया है) लेकिन मेरे पास पहले से ही जेएसपीनर के मॉडल से जुड़ा एक चेंजलिस्ट है। यह जेएसपीनर में मूल्य में किए गए किसी भी बदलाव को पकड़ता है, लेकिन केवल तभी उपयोगकर्ता जेएसपीनर नियंत्रण का उपयोग करता है। मैं कुंजीलिस्ट के कुंजी दबाए गए ईवेंट को आग लगाने की कोशिश कर रहा हूं, जब उपयोगकर्ता मैन्युअल रूप से कीबोर्ड के माध्यम से जेएसपीनर के मान को संपादित करता है। धन्यवाद – Frank
@ फ्रैंक: जब भी उपयोगकर्ता मूल्य बदलता है * और चेंज दूर * (या एंटर दबाता है) एक चेंजलिस्टर को आग लगनी चाहिए। आप सही हैं कि उपयोगकर्ता टाइपिंग करते समय यह आग नहीं लगेगा। –
हाँ यह समस्या है जो मैं कर रहा हूं। यह एक विज़ार्ड पैनल का हिस्सा है और यदि उपयोगकर्ता बस एक तिथि और क्लिक का चयन करता है तो फोकस खो नहीं जाता है और सत्यापन विधि बहुत देर हो जाती है। वैसे भी आपके इनपुट के लिए धन्यवाद। पहले विचार से ट्रिकियर लगता है। – Frank