JTable中每一行有一個checkbox,點選以后這一行顏色變灰(可以是字體顏色,背景顏色也可以) 然后這一行的某些列不能編輯 這個怎么實現? 給思路也行 先謝了哈 在線等
解决方案 »
- java调用jython时的中文问题,急呀
- 求高手相助:Java写的windows服务,在windows2003上......
- 新手 java 基础小问题....
- 关于 大数据量顺序进行处理机制
- 为什么用FileReader读取.doc文档会出现乱码?如何解决?
- 怎样调用另一个公共类(含有参数)?
- 老子毕业前四个月到深圳,cjol上投了10000多份简历,平均每天投300多份,我容易吗我
- 关于参数传递与返回值(大虾菜鸟都进来看看)
- 第一次接触java,编译Hello World问题:
- java io File 在服务器端路径的问题
- GUI兄弟姐妹们欢迎进入
- JAVA的四层次:private > package > protect >public, 从低到高.是不是??
创建表格时有几行数组就有多大,然后初始为1.
如果你选择了这一行为true,哪么数组相应为0。
class RowRenderer extends DefaultTableCellRenderer {
private int[] r; private int count = 0; private List array = new ArrayList(); public RowRenderer(int[] r) {
this.r = r;
for (int i = 0; i < r.length; i++) {
if (r[i] == 0) {
array.add(new Integer(i));
}
}
System.out.println();
} public Component getTableCellRendererComponent(JTable t, Object value,
boolean isSelected, boolean hasFocus, int row, int column) {
Iterator it = array.iterator();
while (it.hasNext()) {
Integer n = (Integer) it.next();
if (row == n.intValue()) {
setForeground(Color.lightGray);
// setBackground(Color.gray);
break;
} else if (row % 2 == 0) {
setForeground(t.getForeground());
setBackground(new Color(191, 214, 248));
} else {
setForeground(t.getForeground());
setBackground(new Color(255, 255, 255));
}
if (!t.getValueAt(row, 18).equals("")
&& t.getValueAt(row, 18) != null) {
setForeground(new Color(249, 102, 157));
// setBackground(new Color(252,205,224));
} }
return super.getTableCellRendererComponent(t, value, isSelected,
hasFocus, row, column);
}
}