я создаю простую рейтинговую систему в java. у нас есть 5 переключателей для оценки курса. Я прикрепил снимок экрана ниже. У меня есть группа buttonGroup1, buttonGroup2, buttonGroup3
у меня есть код ниже. что я пробовал до сих пор. сначала я попытался с buttonGroup1, но я получил ошибку, что метод isSelected в классе ButtonGroup не может быть применен к заданным типам требуется модель кнопки. как правильно написать здесь код и получить его.
if (buttonGroup1.isSelected())
{
if (r1.isSelected()){
JOptionPane.showMessageDialog(this,"1");
}
else if (r2.isSelected()){
JOptionPane.showMessageDialog(this,"2");
}
else if (r3.isSelected()){
JOptionPane.showMessageDialog(this,"3");
}
else if (r4.isSelected()){
JOptionPane.showMessageDialog(this,"4");
}
else if (r5.isSelected()){
JOptionPane.showMessageDialog(this,"5");
}
}
если (buttonGroup1.isSelected()) эта строка идет, метод ошибки isSelected в классе ButtonGroup не может быть применен к заданным типам требуется модель кнопки.
я. я не знаю, какое значение передать ему
Из документации ButtonGroup:
method isSelected(ButtonModel m) — возвращает, является ли ButtonModel выбрано.
Итак, чтобы использовать этот метод, вы должны передать туда объект ButtonModel
if (buttonGroup1.isSelected(ButtonModel m)) я написал так ') отображается ожидаемая ошибка
buttonGroup.isSelected(ButtonModel m)
на самом деле не то, что вам нужно, потому что это проверяет, выбрано ли конкретное ButtonModel
. Либо вы опускаете весь внешний оператор if и просто проверяете все отдельные переключатели для выбора, либо вы можете использовать getSelection()
и проверять наличие нуля.
Пример:
if (buttonGroup1.getSelection() != null) {
if (r1.isSelected()) {
JOptionPane.showMessageDialog(this, "1");
} else if (r2.isSelected()) {
JOptionPane.showMessageDialog(this, "2");
} else if (r3.isSelected()) {
JOptionPane.showMessageDialog(this, "3");
} else if (r4.isSelected()) {
JOptionPane.showMessageDialog(this, "4");
} else if (r5.isSelected()) {
JOptionPane.showMessageDialog(this, "5");
}
}
if (buttonGroup1.getSelected() != null)) в этой строке ошибка отображала недопустимое начальное выражение
вы, вероятно, предполагаете передать какое-то значение внутри метода isSelected