मेरे पास दो JButtons
"बाएं" और "दाएं" नामक हैं। "बाएं" बटन बाईं ओर एक आयत वस्तु को स्थानांतरित करता है और "दाएं" बटन इसे दाईं ओर ले जाता है। मेरे पास कक्षा में ActionListener
है जो श्रोता के रूप में कार्य करता है जब बटन क्लिक किया जाता है। हालांकि मैं प्रत्येक क्लिक पर क्लिक होने पर विभिन्न कार्यों को करना चाहता हूं। मैं ActionListener
में, किस बीच क्लिक किया गया था, में अंतर कैसे कर सकता हूं?एक एक्शन श्रोता, दो जेबुटन
उत्तर
बटन से प्रत्येक के लिए सेट actionCommand।
// दोनों बटनों पर एक्शन कमांड सेट करें।
btnOne.setActionCommand("1");
btnTwo.setActionCommand("2");
public void actionPerformed(ActionEvent e) {
int action = Integer.parseInt(e.getActionCommand());
switch(action) {
case 1:
//doSomething
break;
case 2:
// doSomething;
break;
}
}
अद्यतन:
public class JBtnExample {
public static void main(String[] args) {
JButton btnOne = new JButton();
JButton btnTwo = new JButton();
ActionClass actionEvent = new ActionClass();
btnOne.addActionListener(actionEvent);
btnTwo.addActionListener(actionEvent);
btnOne.setActionCommand("1");
btnTwo.setActionCommand("2");
}
}
class ActionClass implements ActionListener {
@Override
public void actionPerformed(ActionEvent e) {
int action = Integer.parseInt(e.getActionCommand());
switch (action) {
case 1:
// DOSomething
break;
case 2:
// DOSomething
break;
default:
break;
}
}
}
की
मुझे लगता है कि यह सामान्य रूप से अधिक सुरुचिपूर्ण है। धन्यवाद! – CodyBugstein
हालांकि एक सेकंड हालांकि, क्या यह आवश्यक है कि एक्शनलिस्टर एक ही कक्षा में हो? – CodyBugstein
एक एक्शनलिस्टर वर्ग परिभाषित करें। यूआई कक्षा में एक्शन क्लास की ऑब्जेक्ट घोषित करें। AddActionListener विधि का उपयोग करके प्रत्येक बटन कार्रवाईसूची सेट करें और इस क्रिया वर्ग संदर्भ को param के रूप में जोड़ें और आखिरकार उनमें से प्रत्येक को एक्शन कमांड सेट करें। – Amarnath
getSource()
ActionEvent
के लिए उपलब्ध विधि के साथ काफी आसान:
JButton leftButton, rightButton;
public void actionPerformed(ActionEvent e) {
Object src = e.getSource();
if (src == leftButton) {
}
else if (src == rightButton) {
}
}
- 1. एक एक्शन श्रोता
- 2. एक्शन श्रोता
- 3. जावा एक्शन श्रोता
- 4. एक दृश्य में दो एक्शन शीट बनाना
- 5. क्लिक श्रोता पर दो बार
- 6. एक श्रोता
- 7. आकार में 2 जेबुटन समान बनाएं
- 8. श्रोता बनाम सेट श्रोता
- 9. एक सामग्री स्क्रिप्ट 0 श्रोता में श्रोता
- 10. एंड्रॉइड - टच श्रोता पर दो बार गोलीबारी
- 11. क्या मैं एक जेएलएबल में एक एक्शन श्रोता जोड़ सकता हूं?
- 12. श्रोता
- 13. श्रोता
- 14. श्रोता
- 15. मैं एक एक्शन प्रतिनिधि
- 16. jquery resize श्रोता एक div
- 17. ज़ेंड फ्रेमवर्क - एक एक्शन हेल्पर
- 18. एक्शन फ़िल्टर एक्शन पैरामीटर
- 19. एक्शन
- 20. ज़ेंड फ्रेमवर्क एक्शन को दो बार बुलाया जाता है
- 21. दो खिंचाव बटन के साथ एंड्रॉइड एक्शन बार
- 22. एएसपी.नेट एमवीसी एक्शन को दो बार बुलाया जाता है
- 23. jQuery श्रोता
- 24. एनएचबेर्नेट: इंटरसेप्टर और श्रोता
- 25. मान्यता श्रोता
- 26. एक्शन कमांड बनाम एक्शन क्लासेस?
- 27. ओपन ग्राफ - एक पोस्ट एक्शन
- 28. एक एक्शन कोको भेजें - IBAction
- 29. क्लिक श्रोता
- 30. ExtJS श्रोता
संभव डुप्लिकेट [? जावा - एक समारोह के साथ कई घटनाओं संभाल] (http://stackoverflow.com/questions/501533/java-handle-multiple- घटनाओं के साथ-साथ-समारोह) –