我有一些这样的代码:

private void formWindowOpened(java.awt.event.WindowEvent evt) {

        // create header panel
        JPanel hPanel = new JPanel();
        hPanel.setLayout(new BorderLayout(600, 100));
        this.getContentPane().add(hPanel);

        // text header
        JLabel hLabel = new JLabel("LỊCH VẠN NIÊN 2015");
        hPanel.add(hLabel);

    }


我创建一个表单,高度为600px和400px。我想添加一个面板(600x100),其中包含一个文本,该文本的中心为垂直,中心为水平。我尝试上面的代码,但我的框架为空。请帮助我,我是新手:)

最佳答案

hPanel.setLayout(new BorderLayout(600, 100));


这意味着组件之间的差距为600(水平)和100(垂直)。与大小无关。

请尝试使用setPreferredSize(),但不建议这样做。最好反映组件的大小,而不要定义自己的组件。

同时移动

this.getContentPane().add(hPanel);


该方法的结尾是最后一条语句。

您可能还需要调用框架的pack()或setSize()。

09-25 21:15