我被告知使用swing来设计这个。谁能告诉我怎么做吗?

我被告知使用swing来设计这个。谁能告诉我怎么做吗?,swing,Swing,我是java新手,请帮助我 要求是这样的 *-----------------------------------------------* | label A | field A | | label B | field B | | label C | field C | | label D | field D

我是java新手,请帮助我 要求是这样的

*-----------------------------------------------*
| label A     |   field A                       | 
| label B     |   field B                       |
| label C     |   field C                       |
| label D     |   field D                       |   
|                                               |
| Button1 Button2 Button3 Button4               |
|                                               |
|                                               |
|           JTABLE                              |
|                                               |
*-----------------------------------------------*
我已尝试使用此代码

'我正在创建组布局'

javax.swing.GroupLayout=newjavax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(布局)

创建水平组

layout.setHorizontalGroup(

'这是一个垂直布局'

    layout.setVerticalGroup(
        layout.createParallelGroup()
        .addGroup(layout.createSequentialGroup()
            .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
            .addGap(40, 40, 40)
            .addGroup(layout.createSequentialGroup()
                .addComponent(jLabel2)
               .addComponent(txtitem, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(jLabel3)
               .addComponent(txtprice, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(jLabel4)
                .addComponent(txtquantity, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(jLabel5)
                .addComponent(txtreorder, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
               // .addComponent(btnadd))
                .addGap(40, 40, 40)
                .addComponent(btnadd,javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(txtreorder, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(btnupdate,javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addComponent(txtreorder, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
        .addComponent(btndelete,javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
        .addComponent(txtreorder, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
        .addComponent(btnlist,javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
        .addComponent(txtreorder, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
            //.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
            .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 200, Short.MAX_VALUE)
            //.addContainerGap()
            )));



}

如果没有GUI设计器,则无法阅读和使用您上载的代码。在学习阶段,请尽量避免使用GUI设计器。在学习期间,最好始终坚持使用标准的简单布局

为了使代码保持简单,您可以尝试以下方法:

生成的JFrame如下所示:

您可能需要对JLabel水平对齐进行一些调整,以使事情正确

此示例代码应完成以下工作:

    public class LayoutSample extends JFrame {

        public LayoutSample() {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        p1 = new JPanel(new BorderLayout());
        p2 = new JPanel(new BorderLayout());
        p3 = new JPanel(new GridLayout(4, 2));
        p4 = new JPanel(new FlowLayout());
        p5 = new JPanel(new BorderLayout());

        l1 = new JLabel("Label1");
        l2 = new JLabel("Label2");
        l3 = new JLabel("Label3");
        l4 = new JLabel("Label4");
        tf1 = new JTextField();
        tf2 = new JTextField();
        tf3 = new JTextField();
        tf4 = new JTextField();
        p3.add(l1);
        p3.add(tf1);
        p3.add(l2);
        p3.add(tf2);
        p3.add(l3);
        p3.add(tf3);
        p3.add(l4);
        p3.add(tf4);

        b1 = new JButton("Button1");
        b2 = new JButton("Button2");
        b3 = new JButton("Button3");
        b4 = new JButton("Button4");
        p4.add(b1);
        p4.add(b2);
        p4.add(b3);
        p4.add(b4);

        t = new JTable();
        t.setModel(new javax.swing.table.DefaultTableModel(
                new Object[][]{
                    {null, null, null, null},
                    {null, null, null, null},
                    {null, null, null, null}
                },
                new String[]{
                    "Title 1", "Title 2", "Title 3", "Title 4"
                }
        ));
        sc = new JScrollPane(t);

        p5.add(sc, BorderLayout.CENTER);
        p2.add(p3, BorderLayout.NORTH);
        p2.add(p4, BorderLayout.SOUTH);
        p1.add(p2, BorderLayout.NORTH);
        p1.add(p5, BorderLayout.CENTER);
        add(p1);

        pack();
    }

    public static void main(String[] args) {
        new LayoutSample().setVisible(true);
    }

    private JPanel p1, p2, p3, p4, p5;
    private JLabel l1, l2, l3, l4;
    private JTextField tf1, tf2, tf3, tf4;
    private JButton b1, b2, b3, b4;
    private JScrollPane sc;
    private JTable t;
}

你似乎也是StackOverflow的新手,但事情并非如此。你必须发布你迄今为止尝试过的内容,以便社区能够提出解决方案。否则,正如你现在可能已经发现的那样,你将收到许多喜欢触发的成员的负面评论。似乎你需要检查一下。天哪,这是很多方法链ing.你害怕分号还是什么的?:你能给我一些参考资料来做这件事吗?因为我在这件事上坚持了很长时间,所以请帮助我对照模型表格检查代码。你可能需要做一些学习来理解这些概念。查看sun oracle教程。
    public class LayoutSample extends JFrame {

        public LayoutSample() {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        p1 = new JPanel(new BorderLayout());
        p2 = new JPanel(new BorderLayout());
        p3 = new JPanel(new GridLayout(4, 2));
        p4 = new JPanel(new FlowLayout());
        p5 = new JPanel(new BorderLayout());

        l1 = new JLabel("Label1");
        l2 = new JLabel("Label2");
        l3 = new JLabel("Label3");
        l4 = new JLabel("Label4");
        tf1 = new JTextField();
        tf2 = new JTextField();
        tf3 = new JTextField();
        tf4 = new JTextField();
        p3.add(l1);
        p3.add(tf1);
        p3.add(l2);
        p3.add(tf2);
        p3.add(l3);
        p3.add(tf3);
        p3.add(l4);
        p3.add(tf4);

        b1 = new JButton("Button1");
        b2 = new JButton("Button2");
        b3 = new JButton("Button3");
        b4 = new JButton("Button4");
        p4.add(b1);
        p4.add(b2);
        p4.add(b3);
        p4.add(b4);

        t = new JTable();
        t.setModel(new javax.swing.table.DefaultTableModel(
                new Object[][]{
                    {null, null, null, null},
                    {null, null, null, null},
                    {null, null, null, null}
                },
                new String[]{
                    "Title 1", "Title 2", "Title 3", "Title 4"
                }
        ));
        sc = new JScrollPane(t);

        p5.add(sc, BorderLayout.CENTER);
        p2.add(p3, BorderLayout.NORTH);
        p2.add(p4, BorderLayout.SOUTH);
        p1.add(p2, BorderLayout.NORTH);
        p1.add(p5, BorderLayout.CENTER);
        add(p1);

        pack();
    }

    public static void main(String[] args) {
        new LayoutSample().setVisible(true);
    }

    private JPanel p1, p2, p3, p4, p5;
    private JLabel l1, l2, l3, l4;
    private JTextField tf1, tf2, tf3, tf4;
    private JButton b1, b2, b3, b4;
    private JScrollPane sc;
    private JTable t;
}