尝试编写Swing GUI。单击一个按钮时,我想测试另一个按钮是否已经被单击。如果有,则执行“ if”语句中的语句。但是看起来“ if”语句永远不会执行?

private void radSingleBurgerActionPerformed(java.awt.event.ActionEvent evt) {
    if(radDoubleBurger.isSelected()){
        newItemPrice = Double.parseDouble(lblItemPrice.getText());
        newItemPrice -= doublePrice;
        lblTest.setText(String.valueOf(newItemPrice));//test to see if working
    }
    lblItemPrice.setText(String.valueOf(newItemPrice += singlePrice));
}

private void radDoubleBurgerActionPerformed(java.awt.event.ActionEvent evt) {
     if(radSingleBurger.isSelected()){
        newItemPrice = Double.parseDouble(lblItemPrice.getText());
        newItemPrice -= singlePrice;
        lblTest.setText(String.valueOf(newItemPrice));//test to see if working
    }
    lblItemPrice.setText(String.valueOf(newItemPrice += doublePrice));
}

最佳答案

单击JButton不会(永久)选择它。单击只是一个临时动作。

也许您想使用JToggleButton。这使您可以单击一个按钮使其变为选中状态,然后再次单击使其变为未选中状态。

阅读有关How to Use Buttons的Swing教程中的部分,以获取更多信息。

或者,如果您只想知道用户是否单击了常规JButton,则需要自己维护一个布尔变量,您可以在按钮的ActionListener中对其进行更新。

09-27 15:16