JCheckBox не появляется при запуске моей программы - PullRequest
2 голосов
/ 04 июня 2019

Я новичок в Java и изучаю свинг онлайн.Я только что дошел до части, где мы добавляем JCheckBox, и я не могу понять, почему они не отображаются, когда я запускаю программу.Я запускаю его на Eclipse на Mac, если это имеет значение.

Я пытался переписать все, но это не сработало.Я знаю, что они добавлены, но они просто не появляются.JRadioButtons показывают просто отлично.

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Userimputcomplex 
{
    public static void main(String[] args) 
    {
         RadioDemo r = new RadioDemo();
    }
}

class RadioDemo extends JFrame
{
    JTextField t1; //Input Text
    JButton b; //Button
    JRadioButton r1,r2; //Check buttons
    JLabel l; //Text
    JCheckBox c1,c2; //Multiple check buttons

    public RadioDemo()
    {
        t1 = new JTextField(15);
        b = new JButton("Ok");
        r1 = new JRadioButton("Male");
        r2 = new JRadioButton("Female");
        l = new JLabel("Greetings");
        c1 = new JCheckBox("Dancing");
        c2 = new JCheckBox("Singing");

        ButtonGroup bg = new ButtonGroup(); 
        bg.add(r1);
        bg.add(r2);

        add(t1);

        add(r1);
        add(r2);
        add(c1);
        add(c2);
        add(b);
        add(l);

        b.addActionListener(new ActionListener() 
        {
            public void actionPerformed(ActionEvent e) 
            {
                String name = t1.getText();

                if(r1.isSelected()) 
                {
                    name = "Mr." + name;
                }
                else
                {
                    name = "Ms." + name;
                }
                if(c1.isSelected()) 
                {
                    name = name + " Dancer";
                }
                if(c2.isSelected()) 
                {
                    name = name + " Singer";
                }
                l.setText(name);
            }
        });

        setLayout(new FlowLayout());
        setVisible(true);
        setSize(400, 400);
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...