MouseAdapter中的getComponentAt()

时间:2013-06-01 12:50:11

标签: java swing jpanel runtime-error mouse-listeners

我在这里有代码:

import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JPanel;
    public class MouseEvents extends MouseAdapter {
    @Override
    public void mousePressed(MouseEvent e) {
        JPanel selectedPanel = (JPanel) getComponentAt(e.getPoint()).getParent();
        }
}

这可能是一个非常简单的原因,但我无法弄清楚为什么getComponentAt()会返回错误cannot find symbol。之前,当我没有遇到这个问题时,它给出了getComponentAt() could not be referenced in a static context的错误 - 但它是如何被引用为静态的?

1 个答案:

答案 0 :(得分:1)

因为您的代码没有 getCompnentAt()方法。

这是Component class中的一种方法(当然还有从中继承的所有类)。

您需要从Component

中检索MouseEvent
Component c = e.getComponent();