Netbeans GUI构建器和Jtable

时间:2017-08-23 13:31:38

标签: java swing netbeans jtable

我在让JTable出现在JPanel中时遇到了一些困难。我使用Netbeans GUI构建器构建了UI,然后从代码创建了jtable,并尝试添加到现有的GUI构建的jpanel。我无法解决问题所在。代码的jtable部分的代码如下所示(数据组成)。我怀疑我在使用GUI构建器时缺少一些步骤,因为如果我不使用GUI构建器,我可以使jtable工作

   private void fillOrderDetailsJtable (){

        String[] columnNames = {"Order Line No", "Product", "Quantity" };

        Object[][] data = {
           {"César Cielo", "Filho", "Brazil", "50m freestyle" },
           {"Amaury", "Leveaux", "France", "50m freestyle"},
           {"Eamon", "Sullivan", "Australia", "100m freestyle"},

        }; 
        JTable table = new JTable(data, columnNames);
        table.setFillsViewportHeight(true);

        JScrollPane tableScrollPane = new JScrollPane(table);

        tableScrollPane.setPreferredSize(new Dimension(300, 50));

        pnOrderLines.add(tableScrollPane);

        Order_OrderLine.this.add(pnOrderLines); 
         // table.setAutoCreateRowSorter(true);

        tableScrollPane.setVisible(true);
        pnOrderLines.setVisible(true);
        table.setVisible(true);          
   }

1 个答案:

答案 0 :(得分:0)

您是否已将JTable放置在Form上并在从头开始尝试之前检查Netbeans生成的代码?

这是恕我直言,是了解构建表格的最简单方法。

我认为你这样做并将生成的代码与你自己的代码进行比较。

有一些示例代码:

jScrollPane1 = new javax.swing.JScrollPane();
jTable1 = new javax.swing.JTable();

setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
getContentPane().setLayout(null);

jTable1.setModel(new javax.swing.table.DefaultTableModel(
      new Object [][] {
        {null, null, null, null},
        {null, null, null, null},
        {null, null, null, null},
        {null, null, null, null}
      },
      new String [] {
        "Title 1", "Title 2", "Title 3", "Title 4"
      }
    ));
    jScrollPane1.setViewportView(jTable1);

    getContentPane().add(jScrollPane1);
    jScrollPane1.setBounds(158, 100, 292, 246);

    pack();