2011-03-01 10 views
7

यह एक ActionEvent करने के लिए एक MouseEvent कन्वर्ट करने के लिए संभव है?जावा MouseEvent ActionEvent में कनवर्ट

+0

क्यों? आप क्या करने का प्रयास कर रहे हैं? मुझे यकीन है कि एक बेहतर समाधान है। – camickr

उत्तर

7

नहीं कुछ जानकारी खोने के बिना। MouseEvent में माउस स्थान (x, y) और जो बटन दबाए गए हैं (यदि कोई हो) के बारे में जानकारी शामिल है।


मैं इस तरह रूपांतरण करना होगा:

MouseEvent me = ...; 
ActionEvent ae = new ActionEvent(me.getSource(), me.getID(), me.paramString()); 
3

ज़रूर, कि क्या एक बटन (मेरी समझ के लिए) करता है। यह MouseEvent को संसाधित करता है और ActionEvent बनाता है (भेजता है)।

एक्शन इवेंट्स अर्थपूर्ण घटनाएं हैं - सिग्नल की तरह, कि एक निश्चित बटन (विजेट!) "दबाया गया" है। इस एक्शन इवेंट के लिए ट्रिगर एक माउस इवेंट हो सकता है ("बाएं बटन दबाया गया है और जारी किया गया है जबकि माउस पॉइंटर एडब्ल्यूटी बटन विजेट द्वारा परिभाषित आयत में था") या एक कीबोर्ड इवेंट ("स्पेस बार दबाया गया है और रिलीज़ किया गया है जबकि फोकस एडब्ल्यूटी बटन विजेट पर था ")।

मुझे लगता है कि आप तकनीकी रूपांतरण नहीं देख रहे हैं। व्यावहारिक रूप से, आपको माउस ईवेंट सुनना होगा और अपने एक्शन श्रोताओं को नई एक्शन इवेंट्स आग लगनी होगी।