如何知道 java 中是否启用了 JRadioButton
How to know if JRadioButton is enabled in java
所以我在下面的 if 语句中的参数必须检查我的 JRadioButton 是否被选中,但由于某种原因,即使它没有被选中,程序仍然运行。
public void actionPerformed(ActionEvent e) {
String actionCheck = Binary.userInput1.getText();
if(Binary.binary.isEnabled() && actionCheck.matches("[01]+")){ // checks if its binary
int decimalValue = Integer.parseInt(actionCheck, 2);
String convertedDecimal = Integer.toString(decimalValue);
Binary.userInput2.setText(convertedDecimal);
}
else if (Binary.decimal.isEnabled() && decimalCheck(Binary.userInput1)){
int binaryValue = Integer.parseInt(actionCheck);
Binary.userInput2.setText(Integer.toBinaryString(binaryValue));
}
else
Binary.userInput1.setText("WRONG INPUT! -- try again");
}
我错过了什么?
这些按钮被称为二进制和十进制(是的,我知道,我的 class 也被称为二进制,新手错误)
已找到答案!
在这种情况下应该使用的不是 isEnabled()
,而是方法 isSelected()
尝试使用 yourJRadioButton.isSelected()
而不是 isEnabled()
。
所以我在下面的 if 语句中的参数必须检查我的 JRadioButton 是否被选中,但由于某种原因,即使它没有被选中,程序仍然运行。
public void actionPerformed(ActionEvent e) {
String actionCheck = Binary.userInput1.getText();
if(Binary.binary.isEnabled() && actionCheck.matches("[01]+")){ // checks if its binary
int decimalValue = Integer.parseInt(actionCheck, 2);
String convertedDecimal = Integer.toString(decimalValue);
Binary.userInput2.setText(convertedDecimal);
}
else if (Binary.decimal.isEnabled() && decimalCheck(Binary.userInput1)){
int binaryValue = Integer.parseInt(actionCheck);
Binary.userInput2.setText(Integer.toBinaryString(binaryValue));
}
else
Binary.userInput1.setText("WRONG INPUT! -- try again");
}
我错过了什么?
这些按钮被称为二进制和十进制(是的,我知道,我的 class 也被称为二进制,新手错误)
已找到答案!
在这种情况下应该使用的不是 isEnabled()
,而是方法 isSelected()
尝试使用 yourJRadioButton.isSelected()
而不是 isEnabled()
。