Java 无法在Swing中的父级设置鼠标侦听器
我有一个Java 无法在Swing中的父级设置鼠标侦听器,java,swing,jpanel,mouselistener,Java,Swing,Jpanel,Mouselistener,我有一个JPanel名为parent,然后有另一个JPanel名为child 我补充说: parent.addMouseListener(new MouseInputListener(){ public void mousePressed(MouseEvent ev){ System.out.println("Pressed") } }); parent.add(child); 现在每当我点击子面板时,父事件不会被触发。若我点击父对象的其他区域,事件将被触发 我不想在子级
JPanel
名为parent
,然后有另一个JPanel
名为child
我补充说:
parent.addMouseListener(new MouseInputListener(){
public void mousePressed(MouseEvent ev){
System.out.println("Pressed")
}
});
parent.add(child);
现在每当我点击子面板时,父事件不会被触发。若我点击父对象的其他区域,事件将被触发
我不想在子级添加事件侦听器,因为我将添加许多子级,我不会重复此编码
有没有一种方法可以在父级设置
MouseListener
,这样所有子级都可以响应它?“-JDK 1.4”Wait,…什么?那个版本几年前就过时了!顺便说一句,为什么用户单击面板而不是按钮或菜单项等?1。是否有一种方法可以将MouseListener设置为父级,以便所有子级都可以响应它我不重复这个编码,因为child在组件层次结构中是ontop,所以要使用所有鼠标和键事件,必须将所有这些事件分派回容器(!=我不重复这个编码。),这是逻辑,用户友好,预期的反应和对当今大多数编程语言和他们的Guier Andrew有效,对于你的评论1,我有一个遗留代码要修改:(对于你的评论2,我基本上是在尝试对flick事件做出反应,为了简化事情,我刚刚添加了鼠标按下的代码Tip:Add@mKorbel(或者其他任何人,@
很重要)通知此人新的评论。