我有一个JButton
控件的网格,单击一个按钮将显示一个数字。单击的前7个按钮将为黄色,第8个按钮将为绿色。我通过使用“计数”来做到这一点。但是,我目前遇到的问题是,我单击同一按钮后仍然会增加计数,到第8次单击,该按钮将从黄色变为绿色。
我在下面附加了我的动作侦听器方法:
@Override
public void actionPerformed (ActionEvent event)
{
for (int i = 0; i < totalButton; i++)
{
if (event.getSource() == jbArray[i])
{
jbArray[i].setText (String.format("%d", alist.get(i)));
if (count == 8)
{
jbArray[i].setBackground (Color.GREEN);
}
else if (count < 8)
{
jbArray[i].setBackground (Color.YELLOW);
}
count++;
}
}
}
答案 0 :(得分:0)
似乎您有一系列按钮。您将需要某种方式来跟踪单击了哪个jButton。您可以创建另一个名为clicked []的数组,并存储单击了哪个按钮。然后,您可以遍历数组以查看单击的数字是否与当前按钮匹配。如果它不在第二个列表中,请运行您的颜色更改代码,然后将其添加到clicked []数组中。 这只是一个示例,当然还有其他方法,其目的是跟踪已单击的内容,并且仅在显示未单击按钮时才执行换色器。