передать значение радиокнопки, выбранное другому классу - PullRequest
0 голосов
/ 24 апреля 2011

Есть ли какой-нибудь пример для меня, чтобы передать значение радиокнопки, которое выбрано для другого класса?

jr1 = new JRadioButton ("11.40 AM");
    jr2 = new JRadioButton ("12.00 PM");
    jr3 = new JRadioButton ("1.40 PM");
    jr4 = new JRadioButton ("3.40 PM");
    jr5 = new JRadioButton ("5.40 PM");
    jr6 = new JRadioButton ("7.00 PM");
    jr7 = new JRadioButton ("9.00 PM");
    jr8 = new JRadioButton ("10.40 PM");
    jr9 = new JRadioButton ("11.40 PM");
    jr10 = new JRadioButton ("12.40 AM");

ButtonGroup group = new ButtonGroup ();
    group.add(jr1);
    group.add(jr2);
    group.add(jr3);
    group.add(jr4);
    group.add(jr5);
    group.add(jr6);
    group.add(jr7);
    group.add(jr8);
    group.add(jr9);
    group.add(jr10);

Я использую этот способ ... сейчас мне нужно знать, как мне добавить, например;если я выберу 12.00 вечера ... он передаст значение 12.00 другому классу ... TQ

Ответы [ 2 ]

2 голосов
/ 24 апреля 2011

Если вы посмотрите на Swing Tutorial на кнопках ...

Пусть другой класс реализует ActionListener и создаст этот метод

public void actionPerformed(ActionEvent e) {
    // do something
}

Убедитесь, чтона вашей радиокнопке вы вызываете

radioButton.addActionListener(otherClass);  

РЕДАКТИРОВАТЬ: Чтобы ответить на получение текста кнопки в вопросе, сделайте это в actionPerformed, вызовите getSource () для ActionEvent, и он скажет вам, какая кнопка вызвала событие.Это просто вопрос получения текста с кнопки (я думаю, что это getText (), но не уверен.)

0 голосов
/ 24 апреля 2011

Самый простой способ - передать объекту возвращаемое значение метода isSelected():

MyButtonWatcherClass watch = new MyButtonWatcherClass(); // not a real class, just an example
JRadioButton radioButton = new JRadioButton("Simple Radio Button");
...
watch.processRadioButtonState(radioButton.isSelected()); // not a real method, just an example

Где разместить этот код, зависит от вас, но это основная концепция.

Наблюдая за вашим кодом, я не могу устоять - использовать массив :

String hours[] = {"11.40 AM", "12.00 PM" .... };
JRadioButton jrb[] = new JRadioButton[hours.length];
ButtonGroup group = new ButtonGroup ();
...
for (int i = 0; i < hours.length; i++)
{
    jrb[i] = new JRadioButton(hours[i]);
    group.add(jrb[i]);
}

Вот, я это сказал:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...