虽然没有明确的函数说MouseEvent来自左键还是右键还是中键,但一般来说,有两种方法来判断:
[b]1.用MouseEvent.getButton(),[/b]其会返回一个常数,即java.awt.event.MouseEvent中的BUTTON1(1:左键),BUTTON2(2:中键),BUTTON3(3:右键)。
[b]2.用mouseevent.getModifiers(),[/b]也会返回一个常数,即4:right, 16:left
测试代码如下:
[b]1.用MouseEvent.getButton(),[/b]其会返回一个常数,即java.awt.event.MouseEvent中的BUTTON1(1:左键),BUTTON2(2:中键),BUTTON3(3:右键)。
[b]2.用mouseevent.getModifiers(),[/b]也会返回一个常数,即4:right, 16:left
测试代码如下:
import javax.swing.*;
import java.awt.event.*;
public class Button{
public Button(){
JFrame f=new JFrame("test right button");
JButton b=new JButton("click me");
b.addMouseListener(new MouseAdapter(){
public void mousePressed(MouseEvent e){
JButton s=(JButton)e.getSource();
if(e.getButton()==java.awt.event.MouseEvent.BUTTON1) s.setText("left");
else if(e.getButton()==java.awt.event.MouseEvent.BUTTON2) s.setText("middle");
else if(e.getButton()==java.awt.event.MouseEvent.BUTTON3) s.setText("right");
}
}
);
f.getContentPane().add(b);
f.pack();
f.setVisible(true);
f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
}
public static void main(String[] args){
new Button();
}
}
本文介绍了一种在Java中处理鼠标事件的方法,通过使用MouseEvent.getButton()和MouseEvent.getModifiers()来判断鼠标点击的具体类型(左键、中键或右键)。并通过一个示例程序展示了如何根据不同的鼠标按钮点击更新按钮的文本。
2986

被折叠的 条评论
为什么被折叠?



