を追加できますかのコンボボックスから特定の細胞がJTable?
質問
Iを追加したいコンボボックスの細胞へのJTable.
model=new DefaultTableModel(data,col);
JTableHeader head=new JTableHeader();
head.setBackground(Color.BLUE);
table=new JTable(model);
table.add(head);
JComboBox combo = new JComboBox();
combo.addItem("Names");
combo.addItem("Antony");
combo.addItem("Victor");
combo.addItem("Ramkumar");
table.add(combo);
がんのコンボボックスです。が設定できるようにするコンボボックス?
解決
設定する必要がありますTableCellEditorをJTable.について検索は、Javaチュートリアルが、ここでご説明いたします。
JTableは三つの主な授業の仕事:
1)TableModel:この機能はいかに多くの行と列のテーブルやテーブルのデータ、方法が主に使用されていgetValue(行列)は、setValue(価値、行、列).火災イベント通知JTableで再ペイント.
2)TableCellRenderer:この主な目的とするコンポーネントを描画しますJTableでの細胞この部品は塗装済み:ません。を描く場合JComboBoxんdesplegateをクリックすればですので、おJCheckboxそもそも太陽系つな選択/非選択.
3)TableCellEditor:この主な目的で描画内でのコンポーネントJTableCell編集の値。を受けたイベントを決める場合は、編集でgetTableCellEditorComponentソッドが呼び出され、返還のエディタコンポーネント.のcomponentを返しでの発売イベントのTableCellEditorを知って時停止の値を取得し、それを使用して、TableModel.setvalue...解除するには編集する。
ようにJComboBoxにJTableを作成する必要があ自分のTableCellEditorは容易だきます。
他のヒント
この時alookください のJavaチュートリアルと使用」のために、このページで検索エディタとしてコンボボックス」
は、これを試してみてください:。me..clickのためにその作業をセルにコンボボックスを参照してください。
private void comboloader() {
try {
TableColumn gradeColumn = jTable1.getColumnModel().getColumn(0);
JComboBox comboBox = new JComboBox();
comboBox.removeAllItems();
try {
comboBox.addItem("Item 1");
comboBox.addItem("Item 2");
comboBox.addItem("Item 3");
} catch (NullPointerException e) {
} catch (Exception e) {
e.printStackTrace();
}
gradeColumn.setCellEditor(new DefaultCellEditor(comboBox));
} catch (Exception e) {
}
}