Object[][] cells = {
{Boolean.FALSE, "必选","",""},
{Boolean.FALSE, "可选","",""},
{Boolean.FALSE, "必选","",""},
{Boolean.FALSE, "可选","",""},
{Boolean.FALSE, "必选","",""},};
String[] columnNames = {"选择","重要级","文件名","说明"};
DefaultTableModel model = new DefaultTableModel(cells, columnNames) {
public Class getColumnClass(int columnIndex)
{
return columnIndex == 0 ? Boolean.class : String.class;
}
};
jTablesecond = new JTable(model);
JScrollPane sp = new JScrollPane(jTablesecond);
//设置Table列宽
TableColumnModel tcm = jTablesecond.getColumnModel();
int columnCount = jTablesecond.getColumnCount();
TableColumn[] tc = new TableColumn[columnCount];
tc[0] = tcm.getColumn(0);
tc[0].setPreferredWidth(50);
tc[1] = tcm.getColumn(1);
tc[1].setPreferredWidth(75);
tc[2] = tcm.getColumn(2);
tc[2].setPreferredWidth(75);
tc[3] = tcm.getColumn(3);
tc[3].setPreferredWidth(240); jTablesecond.getTableHeader().setReorderingAllowed(false); //设置头不可变
jTablesecond.getTableHeader().setResizingAllowed(false); //设置列宽不可变 jTablesecond.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);//设置为不自动调整大小
jTablesecond.setBackground(Color.white);
jPanelcenter.add(new JScrollPane(jTablesecond)); //显示表头我在JTable里面添加了一个JChecnkBox列表·请问我应该如何获得这个JCheckBox的是否被选中 ,还用被选中了··我应该获得该行所有列的值···
谢谢··分不多····
请拿去···
{Boolean.FALSE, "必选","",""},
{Boolean.FALSE, "可选","",""},
{Boolean.FALSE, "必选","",""},
{Boolean.FALSE, "可选","",""},
{Boolean.FALSE, "必选","",""},};
String[] columnNames = {"选择","重要级","文件名","说明"};
DefaultTableModel model = new DefaultTableModel(cells, columnNames) {
public Class getColumnClass(int columnIndex)
{
return columnIndex == 0 ? Boolean.class : String.class;
}
};
jTablesecond = new JTable(model);
JScrollPane sp = new JScrollPane(jTablesecond);
//设置Table列宽
TableColumnModel tcm = jTablesecond.getColumnModel();
int columnCount = jTablesecond.getColumnCount();
TableColumn[] tc = new TableColumn[columnCount];
tc[0] = tcm.getColumn(0);
tc[0].setPreferredWidth(50);
tc[1] = tcm.getColumn(1);
tc[1].setPreferredWidth(75);
tc[2] = tcm.getColumn(2);
tc[2].setPreferredWidth(75);
tc[3] = tcm.getColumn(3);
tc[3].setPreferredWidth(240); jTablesecond.getTableHeader().setReorderingAllowed(false); //设置头不可变
jTablesecond.getTableHeader().setResizingAllowed(false); //设置列宽不可变 jTablesecond.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);//设置为不自动调整大小
jTablesecond.setBackground(Color.white);
jPanelcenter.add(new JScrollPane(jTablesecond)); //显示表头我在JTable里面添加了一个JChecnkBox列表·请问我应该如何获得这个JCheckBox的是否被选中 ,还用被选中了··我应该获得该行所有列的值···
谢谢··分不多····
请拿去···
那就判断一下主健是否为空不就行了.
既然是在一个单元格内 那应该可以得到这单元格行索引 列索引 等一些信息 然后找到这一行需要得到的内容方法拙略 ...希望对你有所帮助
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.JButton;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;
import javax.swing.table.TableColumnModel;
import javax.swing.table.TableModel;public class Test extends Applet implements ActionListener{
JTable jTablesecond; public Test() {
Object[][] cells = { { Boolean.FALSE, "必选", "", "" },
{ Boolean.FALSE, "可选", "", "" },
{ Boolean.FALSE, "必选", "", "" },
{ Boolean.FALSE, "可选", "", "" },
{ Boolean.FALSE, "必选", "", "" }, };
String[] columnNames = { "选择", "重要级", "文件名", "说明" };
DefaultTableModel model = new DefaultTableModel(cells, columnNames){
public Class getColumnClass(int columnIndex) {
return columnIndex == 0 ? Boolean.class : String.class;
}
}; jTablesecond = new JTable(model);
JScrollPane sp = new JScrollPane(jTablesecond); // 设置Table列宽
TableColumnModel tcm = jTablesecond.getColumnModel();
int columnCount = jTablesecond.getColumnCount();
TableColumn[] tc = new TableColumn[columnCount];
tc[0] = tcm.getColumn(0);
tc[0].setPreferredWidth(50);
tc[1] = tcm.getColumn(1);
tc[1].setPreferredWidth(75);
tc[2] = tcm.getColumn(2);
tc[2].setPreferredWidth(75);
tc[3] = tcm.getColumn(3);
tc[3].setPreferredWidth(240);
jTablesecond.getTableHeader().setReorderingAllowed(false); // 设置头不可变
jTablesecond.getTableHeader().setResizingAllowed(false); // 设置列宽不可变
jTablesecond.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);// 设置为不自动调整大小
jTablesecond.setBackground(Color.white); add(new JScrollPane(jTablesecond)); // 显示表头
JButton button = new JButton("aa");
button.addActionListener(this);
add(button);
} public void actionPerformed(ActionEvent e) {
TableModel model = jTablesecond.getModel();
int count = model.getRowCount();
for(int i = 0 ; i < count ; i++){
boolean checked = (Boolean)model.getValueAt(i, 0);
if(checked){
System.out.println(i);
}
}
}
}