Вопрос новичка в Java - добавить несколько элементов на экран - PullRequest
1 голос
/ 30 июля 2011

Я начинающий, пытаюсь выучить Java как свой первый язык.Когда я добавляю TYPE и Skills в окно, появляется только тот, который добавлен последним (в данном случае, навыками).Как мне заставить обоих появиться?

Спасибо, Равин

public class Funclass extends JFrame{
    FlowLayout layout = new FlowLayout();
    String[] Skillz = {"Analytical", "Numerical", "Leadership", 
          "Communication", "Organisation", "Interpersonal"};
    public Funclass(){
        super("Title Bar");
        JTextField Company = new JTextField("Company Name");
        JComboBox TYPE = new JComboBox();
        JList Skills = new JList(Skillz);
        TYPE.addItem("Choose which type of firm");
        TYPE.addItem("Consultancy");
        TYPE.addItem("Tech");
        Skills.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
        add(TYPE);
        add(Skills);
    }
}

Ответы [ 3 ]

3 голосов
/ 30 июля 2011

Вы забыли добавить

setLayout(layout);

в конструкторе.

1 голос
/ 30 июля 2011

Это не прямой ответ на ваш вопрос, но если вы только начинаете изучать Java, я думаю, что вам, вероятно, не следует начинать с создания пользовательских интерфейсов с помощью Swing («Swing» - это часть Java, которую вы используете здесь, чтобы построить графический интерфейс, и это довольно сложно). Вы действительно прыгаете в глубину.

Небольшая мелочь в вашем коде. Соглашение Java для именования переменных и методов состоит в том, чтобы использовать «верблюжий регистр» и начинать с символа нижнего регистра «SomeLikeThis». Таким образом, все имена переменных должны быть в нижнем регистре, так как все они состоят из одного слова. то есть. «навыки», «тип», «компания».

Я настоятельно рекомендую книгу «Язык программирования Java» Кена Арнольда для начинающих Java.

1 голос
/ 30 июля 2011

Вы забыли установить менеджер раскладки, который у вас удален FlowLayout layout = new FlowLayout();, поэтому вам просто нужно добавить this.setLayout(layout); внутри вашего конструктора.

...