Я работаю над своим HOMEWORK (, пожалуйста, не выполняйте мою работу для меня). У меня уже 95% завершено. Однако у меня проблемы с этим последним. Мне нужно отобразить выбранный пол в JTextArea. Я должен использовать JRadioButton для выбора пола.Отображение текста с выбранного JRadioButton на JTextArea
Я понимаю, что JRadioButtons работают разные. Я настроил прослушиватель действий и мнемонику. Я думаю, что я здесь. Казалось бы, мне, возможно, понадобится использовать всю группу для установки и действия lister.
Любая помощь с благодарностью.
Вот что у меня есть для моего кода (минус часть, которые я не думаю, что нужно, чтобы другие не могут копировать вставить школьные занятия):
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.border.TitledBorder;
public class LuisRamosHW3 extends JFrame {
private JLabel WelcomeMessage;
private JRadioButton jrbMale = new JRadioButton("Male");
private JRadioButton jrbFemale = new JRadioButton("Female");
public LuisRamosHW3(){
setLayout(new FlowLayout(FlowLayout.LEFT, 20, 30));
JPanel jpRadioButtons = new JPanel();
jpRadioButtons.setLayout(new GridLayout(2,1));
jpRadioButtons.add(jrbMale);
jpRadioButtons.add(jrbFemale);
add(jpRadioButtons, BorderLayout.AFTER_LAST_LINE);
ButtonGroup gender = new ButtonGroup();
gender.add(jrbMale);
jrbMale.setMnemonic(KeyEvent.VK_B);
jrbMale.setActionCommand("Male");
gender.add(jrbFemale);
jrbFemale.setMnemonic(KeyEvent.VK_B);
jrbFemale.setActionCommand("Female");
//Set defaulted selection to "male"
jrbMale.setSelected(true);
//Create Welcome button
JButton Welcome = new JButton("Submit");
add(Welcome);
Welcome.addActionListener(new SubmitListener());
WelcomeMessage = (new JLabel(" "));
add(WelcomeMessage);
}
class SubmitListener implements ActionListener{
@Override
public void actionPerformed(ActionEvent e){
String FirstName = jtfFirstName.getText();
String FamName = jtfLastName.getText();
Object StateBirth = jcbStates.getSelectedItem();
String Gender = gender.getActionCommand(); /*I have tried different
variations the best I do is get one selection to print to the text area*/
WelcomeMessage.setText("Welcome, " + FirstName + " " + FamName + " a "
+ gender.getActionCommmand + " born in " + StateBirth);
}
}
} /*Same thing with the printing, I have tried different combinations and just can't seem to figure it out*/
Не уверен, но я думаю, что должен быть метод JRadioButton класса как _getText() _ или что-то подобное. Возможно, вам понадобится использовать прослушиватель действий JRadioButton, например _onSelectListener_. И, наконец, установите JTextField с извлеченной строкой. По вашему запросу я только сказал вам, что делать и как делать, а не точно сказать правильную вещь (на самом деле я тоже не знаю, что делать). Это должен быть правильный поток. Удачи – Nabin
@Nabin: нет, не используйте ActionListener на JRadioButton, потому что время выбора имеет значение, когда нажата кнопка отправки. Исходный плакат имеет это право - используйте объект ButtonGroup, но сначала он должен сделать его видимым, чтобы дать ему класс. –