Java 通过单击另一个带有setSelected事件的切换按钮来更改切换按钮的状态
我想通过单击另一个切换按钮来更改切换按钮的状态。我的代码不是那样工作的。该部分存在一个问题:Java 通过单击另一个带有setSelected事件的切换按钮来更改切换按钮的状态,java,button,calculator,Java,Button,Calculator,我想通过单击另一个切换按钮来更改切换按钮的状态。我的代码不是那样工作的。该部分存在一个问题: private void jToggleButton12ActionPerformed(java.awt.event.ActionEvent evt) { processValue("+"); if(values.contains("+")) jTogg
private void jToggleButton12ActionPerformed(java.awt.event.ActionEvent evt) {
processValue("+");
if(values.contains("+"))
jToggleButton12.setSelected(true);
else
jToggleButton12.isSelected();
}
private void jToggleButton13ActionPerformed(java.awt.event.ActionEvent evt) {
processValue("-");
if(values.contains("-"))
jToggleButton13.setSelected(true);
else
jToggleButton13.isSelected();
}
private void jToggleButton14ActionPerformed(java.awt.event.ActionEvent evt) {
processValue("*");
if(values.contains("*"))
jToggleButton14.setSelected(true);
else
jToggleButton14.isSelected();
}
private void jToggleButton15ActionPerformed(java.awt.event.ActionEvent evt) {
processValue("/");
if(values.contains("/"))
jToggleButton15.setSelected(true);
else
jToggleButton15.isSelected();
}
此代码仅选择点动按钮,当我单击它时,它仍处于选中状态 不必手动处理每个按钮的每个切换和取消切换,您只需将这些按钮添加到
按钮组
代码应该是这样的:
ButtonGroup group = new ButtonGroup();
group.add(jToggleButton1);
group.add(jToggleButton2);
group.add(jToggleButton3);
//...etc
这将自动处理每个按钮的取消切换。现在,您只需要处理每个按钮的功能。我想您希望实现单选按钮的功能,即一次只选择一个按钮。为了实现这一点,我建议您使用JToggleButton实例数组。执行操作时,迭代此数组并取消选择所有按钮,然后根据您的特定条件设置特定按钮
JToggleButton[] buttons = new JToggleButton[5];
...
private void actionPerformed(java.awt.event.ActionEvent evt)
{
processValue("+");
for(JToggleButton b: buttons)
b.setSelected(false);
if(values.contains("+"))
jToggleButton12.setSelected(true);
}
我需要像jToggleButton.setSelected(?)这样的代码;但我不能给出“?”部分的参数。关于if-else语句:if-part工作,但else-part没有按照我想要的方式工作
isSelected()代码>返回一个布尔值,告诉您是否选择了按钮。要设置按钮的选择状态,请使用布尔值作为setSelected()的参数代码>但按钮组
将自动处理选择和取消选择(切换)。您只需要处理processValue(“/”)代码>每个按钮的方法。使用@Juvanis的答案中所示的数组可以很好地解决这个问题。通过使用此代码,我如何在我的包中创建类“JToggleButton”?@cansukartal您不需要创建该类,它是包“javax.swing.JToggleButton”中标准Java库的一部分,只是导入它。它已导入,但现在我的生成代码有问题,如果我可以在这里复制我的全部代码,也许你可以更容易理解问题。我如何向你展示我的全部代码?