2

JTable を JTabbedPane に追加しようとしています。正常に表示されますが、列のタイトルは表示されません。

これが私のコードの関連するビットとピースです:

JTabbedPane jp = new JTabbedPane();
static JTable t1 = new JTable();
static MainFrame f = new MainFrame();
static DefaultTableModel model = new javax.swing.table.DefaultTableModel(); 

    f.scroll.add(jp);
    f.scroll.setViewportView(jp);
    jp.addTab("Tab 1", null, t1, "");
    t1.setModel(model);

    model.addColumn("Description");
    model.addColumn("Change");
    model.setRowCount(1);
    model.fireTableStructureChanged();

ここで、f は JFrame で、f.scroll は JScrollPane です。

4

2 に答える 2

2
  1. に追加JTableすると、表示されるはずです。次に に追加JScrollPaneします。それ以外の場合は、プログラムで追加する必要がありますTableHeaderJScrollPaneJTabedpaneTableHeader

  2. を呼び出さないmodel.fireTableStructureChanged();でください。このイベントは、使用されているDefaultTableModel

  3. 列を作成し、行を追加し、これら 2 つの値をDefaultTableModel ( ObjectまたはVector )に設定することをお勧めします。

  4. JTableこのモデルをに追加します。table = new JTable(myModel);

于 2012-08-07T16:39:22.627 に答える