Переключатель не выполняет своего действия

Каждый раз, когда я нажимаю переключатель для in2cm и пытаюсь выполнить преобразование, при нажатии кнопки преобразования ничего не отображается. Если возможно, также покажите мне, как использовать поле со списком, так что я просто помещу его в поле со списком и сделаю GUI намного проще в использовании.

ButtonGroup convertgroup=new ButtonGroup();
jr=new JRadioButton[10];

jr[0]=new JRadioButton("Inch to Cm");

l1 = new JTextField(25);
l2 = new JTextField(25);

length1 = new JLabel("ft", SwingConstants.LEFT);
length2 = new JLabel("cm", SwingConstants.LEFT);

convertgroup.add(jr[0]);

jr[1]=new JRadioButton("Meter to Feet");
length = new JLabel("m    = ", SwingConstants.LEFT);
l1 = new JTextField(25);
l2 = new JTextField(25);

length1 = new JLabel("ft", SwingConstants.LEFT);
length2 = new JLabel("cm", SwingConstants.LEFT);

convertgroup.add(jr[1]);

jr[2]=new JRadioButton("Mile to Km");
Mi2Km = new JTextField(25);
Km2Mi = new JTextField(25);
length3 = new JLabel("Mile", SwingConstants.LEFT);
length4 = new JLabel("Km", SwingConstants.LEFT);

convertgroup.add(jr[2]);

jr[3]=new JRadioButton("Nautical Mile to Km");
Nmi2Km= new JTextField(25);
Km2Nmi= new JTextField(25);

jr[4]=new JRadioButton("League to Km");
Le2Km = new JTextField(25);
Km2Le = new JTextField(25);

submit = new JButton("Convert");
clear = new JButton("Clear");
quit = new JButton("Quit");

submit.addActionListener(this);
clear.addActionListener(this);
quit.addActionListener(this);

converterPanel.add(jr[0]);
converterPanel.add(jr[2]);
converterPanel.add(jr[1]);
converterPanel.add(l1);
converterPanel.add(length);
converterPanel.add(l2);
converterPanel.add(length1);
converterPanel.add(jr[3]);
converterPanel.add(jr[4]);

converterPanel.add(submit);
converterPanel.add(clear);
converterPanel.add(quit);

length.setBorder(BorderFactory.createEmptyBorder(5,5,5,5));

Вот выполненное действие:

public void actionPerformed(ActionEvent event) {

    if (event.getSource() == quit) {
        System.exit(0);
    }

    if (event.getSource() == clear) {
        l1.setText("");
        l2.setText("");
    }

    if (event.getSource()== submit) {

        if(!jr[0].isSelected() && !jr[1].isSelected() && !jr[2].isSelected())
            JOptionPane.showMessageDialog(converterFrame,
                    "No RadioButton has been Selected ", "Warning",
                    JOptionPane.WARNING_MESSAGE);

        if(jr[0].isSelected())
            in2cm();

        if(jr[1].isSelected()){
            lengthConvert();

            return;
        }
    }
}

Я нашел проблему и исправил ее, но как я могу изменить jlabel каждый раз, когда выбирается jr[0]? потому что jlabel в jr[1] - это m и футы, а в jr[0] мне нужно сделать это в cm.

0 ответов

Другие вопросы по тегам