Java 摆动鼠标点击不起作用
Java Swing mouseClick not working
我正在尝试使用 MouseListener 为 运行 鼠标点击获取一些代码。
我的代码如下:
class TestingLayout extends JFrame implements MouseListener, MouseMotionListener{
...
private JFrame w = new JFrame();
private JPanel panel1 = new JPanel(new GridLayout(4,2),false);
public TestingLayout(){
addMouseListener(this);
BoxLayout boxLayout = new BoxLayout(w.getContentPane(),BoxLayout.Y_AXIS);
w.setLayout(boxLayout);
w.add(panel1);
w.setSize(800,600);
w.setVisible(true);
...
}
...
@Override
public void mousePressed(MouseEvent e){
System.out.println("eh");
}
}
但是当我点击 JFrame 时,它没有 运行 我的代码。
我似乎无法弄清楚。一个 Whosebug 问题引用了一个 MouseListener 参考页面,不幸的是,该页面已不存在。
感谢所有帮助。
谢谢
几个可能的问题:
您正在将侦听器添加到框架,因此添加到框架的另一个组件(如面板)可能正在获取事件
一个mouseClick
是mousePressed
和mouseReleased
的组合。即使鼠标在两个事件之间移动一个像素,也不会生成事件。尝试监听 mousePressed.
如果您需要更多帮助,那么 post 一个适当的 mcve 来演示问题。将来每个问题都应该 MCVE
post,这样我们就不必猜测您可能在做什么或可能不会做什么。
我正在尝试使用 MouseListener 为 运行 鼠标点击获取一些代码。
我的代码如下:
class TestingLayout extends JFrame implements MouseListener, MouseMotionListener{
...
private JFrame w = new JFrame();
private JPanel panel1 = new JPanel(new GridLayout(4,2),false);
public TestingLayout(){
addMouseListener(this);
BoxLayout boxLayout = new BoxLayout(w.getContentPane(),BoxLayout.Y_AXIS);
w.setLayout(boxLayout);
w.add(panel1);
w.setSize(800,600);
w.setVisible(true);
...
}
...
@Override
public void mousePressed(MouseEvent e){
System.out.println("eh");
}
}
但是当我点击 JFrame 时,它没有 运行 我的代码。 我似乎无法弄清楚。一个 Whosebug 问题引用了一个 MouseListener 参考页面,不幸的是,该页面已不存在。
感谢所有帮助。 谢谢
几个可能的问题:
您正在将侦听器添加到框架,因此添加到框架的另一个组件(如面板)可能正在获取事件
一个
mouseClick
是mousePressed
和mouseReleased
的组合。即使鼠标在两个事件之间移动一个像素,也不会生成事件。尝试监听 mousePressed.
如果您需要更多帮助,那么 post 一个适当的 mcve 来演示问题。将来每个问题都应该 MCVE
post,这样我们就不必猜测您可能在做什么或可能不会做什么。