我正在尝试创建一个JButton,它会在按下时知道它是正确还是左击。这是我对JButton
的动作监听器
buttons[i][j].addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
JButton button=(JButton)e.getSource();
StringTokenizer st=new StringTokenizer(button.getName());
}
});
这是我的鼠标监听器代码
public void mouseClicked(MouseEvent event){
if(event.getButton()==1)
{
startPosition.move(event.getX(),event.getY());
System.out.println(startPosition.getLocation());
System.out.println("row="+row+" column="+column);
}
else
{
endPosition.move(event.getX(),event.getY());
System.out.println("row="+row+" column="+column);
}
}
我知道如何判断鼠标是否正确或左键单击,但我无法弄清楚如何将其与按下按钮的动作事件相结合。任何帮助将非常感激。感谢。
答案 0 :(得分:0)
您可以创建一个自定义鼠标侦听器类来执行此操作:
public class CustomMouseListener implements MouseListener {
public void mouseClicked(MouseEvent e) {
if (event.getButton() == MouseEvent.BUTTON1) { // left click
// do stuff
}
if (event.getButton() == MouseEvent.BUTTON3) { //right click
// do stuff
}
}
public void mousePressed(MouseEvent e) {
}
public void mouseReleased(MouseEvent e) {
}
public void mouseEntered(MouseEvent e) {
}
public void mouseExited(MouseEvent e) {
}
}
在使用JButtons的课程中:
buttons[i][j].addMouseListener(new CustomMouseListener());