0
使用mouseevents,我能够获得框架的x和y坐标,但我无法获取面板的x和y坐标。下面的代码是我得到框架的x和y坐标。获取面板的坐标
public void mouseMoved(MouseEvent e) {
x = e.getX();
y = e.getY();
text = Integer.toString(x) +","+Integer.toString(y);
Frame.frame.repaint();
}
下面的代码是我试图获得面板的x和y坐标,但它是绘制0代替。 Paint.paint是我的jpanel的名称。我不知道我做错了什么。如果可以的话请帮忙。
public void mouseMoved(MouseEvent e) {
x = Paint.paint.getX();
y = Paint.paint.getY();
text = Integer.toString(x) +","+Integer.toString(y);
Frame.frame.repaint();
}
转换或我可以只添加的MouseListener到面板, 对?我做到了,而且很有效。但我还有一个问题。我将mouselistener添加到框架和面板,但现在它将为面板设置坐标。不是说我有这个问题,但我只是混淆了为什么它为面板设置它,当我将鼠标监听器添加到jframe和jpanel。 – Ski 2015-04-01 18:39:57
我不知道你是什么意思'设置坐标'。如果两个监听器都设置了相同变量的值,那么最后通知的值将是最终值。 – copeg 2015-04-01 19:38:50
所以如果我做frame.addMouseListener(事件)并把panel.addMouseListener(事件),它会听面板,因为面板是最后一次。好的。我懂了... – Ski 2015-04-01 21:18:41