问题1:如下
public class Fm {
private static JFrame fm;
public static void main(String[] args) {
fm = new JFrame();
fm.setLayout(null);
fm.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
fm.setSize(800, 600);
fm.setLocationRelativeTo(null);
JPanel p = new JPanel();
p.setBackground(Color.black);
p.setBounds(100, 50, 600, 400);
p.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
System.out.println("p--mouseEntered");
}});
fm.addMouseListener(new MouseAdapter() {
public void mouseClicked(MouseEvent e) {
System.out.println("fm--mouseEntered");
}});
fm.add(p);
fm.setVisible(true);
fm.validate();
}
}
如上面的代码,当点击JPanel时,JFrame的鼠标点击事件不会被激活。
有什么办法实现:当鼠标点击JPanel时,JFrame也激活点击事件。
我好像发现了什么。。。。
在 JPanel p 的mouseClicked方法里添加下面的代码即可激活JFrame fm 的mouseClicked事件:
fm.mouseClicked(e);
竟然会这么简单??