我正在尝试将JComponents添加到JTable Cells。我是否实施CellRenderer或CellEditor?
答案 0 :(得分:7)
您需要的是一个自定义编辑器,它将返回JComboBox(或您想要使用的任何组件)。你应该检查Sun tutorial for JTable,它包含一个如何使用JComboBox作为编辑器的例子。如果您也想将JComboBox用作渲染器,那么本教程也适用于此。
答案 1 :(得分:1)
您也可以通过将JComboBox(或JCheckBox或JTextField)的实例传递给构造函数来使用DefaultCellEditor执行此操作。
答案 2 :(得分:0)
1-创建一个JCombobox
并在其中插入您想要的信息,如下所示:
JComboBox<String> sport = new JComboBox<String>();
sport.addItem("foot");
sport.addItem("hand bool");
sport.addItem("****");
2-创建JTable
并将表模式设置为此表,如:
Vector<String> title = new Vector<String>
title.add("id");
title.add("sport");
Vector<Vector<String>> rows = new Vector<Vector<String>>();
rows.addItem("1");
rows.addItem("2");
JTable table = new JTable(rows, title);
3-您将JComboBox放在JTable单元格中,如下所示:
table.getColumnModel().getColumn(2).setCellEditor(new DefaultCellEditor(sport));