0

当我再次单击按钮时,我基本上只是希望颜色变回白色;

这是我必须在第一次点击时更改它的代码;

private void colourButton()
{
    inputField.setBackground(Color.WHITE);
}

// listener method 
public void actionPerformed( ActionEvent e)
{
    inputField.setBackground(Color.RED);
    resultMessage.setText("Colour Button Pressed");
}

现在我只想能够再次单击它 inputField 的颜色应该回到白色。

4

2 回答 2

1
if(inputField.getBackground() == Color.RED)
{
inputField.setBackground(Color.WHITE);
} 
else
{
inputField.setBackground(Color.RED);
}
于 2013-05-01T01:04:27.493 回答
0

到目前为止,您有代码可以在单击按钮时更改文本字段的颜色,因此您现在似乎只需要添加一个条件语句来根据它已经是什么来决定将其更改为什么颜色。

public void actionPerformed( ActionEvent e)
{
    if (inputField.getBackground() == Color.WHITE) {
        inputField.setBackground(Color.RED);
    } else {
        inputField.setBackground(Color.WHITE);
    }
    resultMessage.setText("Colour Button Pressed");
}

您可能还想研究在 GUI 线程中使用类似invokeLater. 这个问题对此有更多信息。

于 2013-05-01T01:10:09.677 回答