P296页最后那段代码if ((event.getModifiersEx() & InputEvent.BUTTON3_DOWN_MASK) != 0)
... // code for right click这段代码真的能处理鼠标右击事件吗?大家看一下下面这段代码,为什么我点击右键没有反应?import java.awt.*;
import java.awt.event.*;
import javax.swing.*;public class TestFrame extends JFrame
{
public TestFrame()
{
setPreferredSize(new Dimension(400, 400));
addMouseListener(new MouseAdapter()
{
public void mouseClicked(MouseEvent event)
{
if ((event.getModifiersEx() & InputEvent.BUTTON3_DOWN_MASK) != 0)
System.out.println("鼠标右键点击");
}
});
}
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
JFrame frame = new TestFrame();
frame.pack();
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
});
}
}
... // code for right click这段代码真的能处理鼠标右击事件吗?大家看一下下面这段代码,为什么我点击右键没有反应?import java.awt.*;
import java.awt.event.*;
import javax.swing.*;public class TestFrame extends JFrame
{
public TestFrame()
{
setPreferredSize(new Dimension(400, 400));
addMouseListener(new MouseAdapter()
{
public void mouseClicked(MouseEvent event)
{
if ((event.getModifiersEx() & InputEvent.BUTTON3_DOWN_MASK) != 0)
System.out.println("鼠标右键点击");
}
});
}
public static void main(String[] args)
{
EventQueue.invokeLater(new Runnable()
{
public void run()
{
JFrame frame = new TestFrame();
frame.pack();
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
});
}
}
如果它的返回值是MouseEvent.BUTTON3,那就是右键;
如果它的返回值是MouseEvent.BUTTON2,那就是中键;
如果它的返回值是MouseEvent.BUTTON1,那就是左键。
希望答案能对你有所帮助!
jPopupMenu1.show(jTable1,e.getX(),e.getY());
} }
算了还是采用2楼的方法吧