1

列の位置がわかっている場合、[Jtable]タブの列ヘッダーを[名前]から[名前]に変更できますか?最後のタブではなく、2番目または最初のタブの列名を変更したい。

このコードでは、最後のタブの列ヘッダーのみを変更できます。私は4つのタブを持っています。

JTableHeader th = table.getTableHeader();
TableColumnModel tcm = th.getColumnModel();
TableColumn tc = tcm.getColumn(0);
tc.setHeaderValue( "???" );
th.repaint();
4

1 に答える 1

1

列識別子を使用して列インデックスを置き換えるだけです。

JTableHeader th = table.getTableHeader();
TableColumnModel tcm = th.getColumnModel();
TableColumn tc = tcm.getColumn(tcm.getColumnIndex("Name")); // may not work, see note below
tc.setHeaderValue( "???" );
th.repaint();

TableColumnModel#getColumnIndex(Object)列識別子で機能します。ほとんどの場合、列識別子と列ヘッダー値は同じです。ただし、場合によっては、それらが異なる可能性があります(通常、列ヘッダーにi18nを使用する場合)。しかし、この場合、あなたは定数IDで列を識別したと思います。

于 2010-09-03T07:59:41.937 に答える