2010-04-25 17 views
5

वहाँ MouseEvent प्रेषण करने के लिए एक तरह से KeyboardFocusManager.getCurrentKeyboardFocusManager().addKeyEventDispatcher(listener); कि घटना घटक को हस्तांतरित करने से पहले होता है का उपयोग कर dispatchKeyEvent के रूप में ही है?डिस्पैच MouseEvent

मुझे लगता है मैं 2 विकल्प

1) पुनरावर्ती

2 सभी compoenents करने के लिए माउस ईवेंट जोड़ने) का उपयोग एक पारदर्शी glasspane

करता जावा समर्थन इस राशि पता है, या मैं एक का उपयोग करने की क्या ज़रूरत है ऊपर दिए गए विकल्पों की?

धन्यवाद

+0

किसी भी मदद कृपया :-) – shay

+0

कर सकते हैं java.awt.Robot वर्ग मदद आप? –

+0

मुझे इसके बारे में सोचने के लिए नहीं आया, यह पूरी तरह से ठंडा है इसके बारे में सोचने के लिए :) मुझे चेक करने दें :) – shay

उत्तर

2

मैं अंत में क्या किया था

long eventMask = AWTEvent.MOUSE_MOTION_EVENT_MASK 
     + AWTEvent.MOUSE_EVENT_MASK; 
Toolkit.getDefaultToolkit().addAWTEventListener(
     new MouseListener(){....}, eventMask); 

आप

8

आप java.awt.Component.dispatchEvent(AWTEvent) की कोशिश की?

import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 

JButton jb = new JButton("Press!"); 
MouseEvent me = new MouseEvent(jb, // which 
    MouseEvent.MOUSE_CLICKED, // what 
    System.currentTimeMillis(), // when 
    0, // no modifiers 
    10, 10, // where: at (10, 10} 
    1, // only 1 click 
    false); // not a popup trigger 

jb.dispatchEvent(me); 
1

alll मैं अंत में इस का उपयोग किया है धन्यवाद:

 a.dispatchEvent(new MouseEvent(a, 
           MouseEvent.MOUSE_MOVED, 
           System.currentTimeMillis() + 10, 
           MouseEvent.NOBUTTON, 
           x,y, 
           0, 
           false)); 

पैरामीटर के लिए कुछ स्पष्टीकरण: एक्स माउस एक्स के लिए ले जाने के वाई माउस वाई स्थानांतरित करने के लिए एक घटकहै मुझे आशा है कि मैं एक ही सवाल के साथ लोगों के लिए मददगार रहे हैं।

संबंधित मुद्दे