【发布时间】:2014-12-18 22:28:38
【问题描述】:
我是java的初学者,所以正在尝试创建一个扫雷游戏。我有一个充满 JButton 的网格,当单击它们时会显示数字或地雷。
我想添加“标志”,所以当我右键单击任何按钮时,它会改变颜色 - 显示它已被标记并被“锁定”,因此除非右键单击,否则无法单击它。
这是我的按钮
public void buttons()
{
// Creating the grid with buttons
grid.setLayout(new GridLayout(20,20));
// Button grid
for (int x = 0; x < buttons.length; x++)
{
for (int y = 0; y < buttons.length; y++)
{
buttons[x][y] = new JButton();
buttons[x][y].addActionListener(this);
grid.add(buttons[x][y]);
}
}
我尝试创建此右键单击功能,但目前卡住了,需要一些帮助。
public void flag()
{
buttons.addMouseListener(new MouseAdapter()
{
public void mousePressed(MouseEvent e)
{
JButton rightClick = new JButton("Right Click");
rightClick.addActionListener(this);
}
});
}
【问题讨论】:
-
“卡住”到底是什么意思?
-
我不知道该怎么做(右键单击一个按钮,当你这样做时它会改变颜色)。我知道我需要 MouseListeners 和 MouseAdapters 但我不确定如何
-
签出
MouseEventdocs.oracle.com/javase/7/docs/api/java/awt/event/… - 你需要检测按钮2的点击
标签: java jbutton right-click