1

我是一个完整的初学者,试图学习 Java 作为我的第一语言。当我在窗口中添加类型和技能时,只显示最后添加的一个(在本例中为技能)。如何让两者都出现?

谢谢,拉文

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);
    }
}
4

3 回答 3

3

你忘了添加

setLayout(layout);

在构造函数中。

于 2011-07-30T15:16:36.180 回答
1

你忘记设置你已经 delcared 的布局管理器FlowLayout layout = new FlowLayout();,所以你只需要this.setLayout(layout);在你的构造函数中添加。

于 2011-07-30T15:17:39.020 回答
1

这不是您问题的直接答案,但如果您刚刚开始学习 Java,我认为您可能不应该从尝试使用 Swing 构建用户界面开始(“Swing”是您在这里用来构建的 Java 的一部分)一个 GUI,它相当复杂)。你真的跳入了深渊。

关于您的代码的一个小问题。Java 命名变量和方法的约定是使用“camel-case”并以小写字符“somethingLikeThis”开头。所以你的变量名应该都是小写的,因为它们都只是一个单词。IE。“技能”、“类型”、“公司”。

我向 Java 初学者强烈推荐 Ken Arnold 的《Java 编程语言》一书。

于 2011-07-30T15:27:31.037 回答