就是在把数据库信息放在了JTable中,用户选择其中任何一条信息后单击“审核”按钮后,让该信息(也就是用户选中的这行中的单元格)不能编辑,表示用户选择的这条信息已经通过了,不能编辑了。
哪位大侠帮帮忙???小弟很急。
能帮忙具体写写代码吗??谢谢了。
我写了一下,但是没成功!
希望大侠们帮帮忙!!!!
if(e.getActionCommand().equals("审核")){
boolean f=new MyTableModel().isCellEditable(rows,0);//调用
if(f==true){ ???????????判断好像出错了,不会判断
System.out.println("成功");
}else{
System.out.println("失败");
}
}
class MyTableModel extends DefaultTableModel{
public boolean isCellEditable(int row, int column) {
row = table.getSelectedRow(); //得到用户选定的那一行
gb_h=table.getValueAt(row, 0).toString(); //得到用户选定的那一行的第一个字段值
gx_m=table.getValueAt(row, 1).toString(); //得到用户选定的那一行的第二个字段值
gd_h=table.getValueAt(row, 2).toString(); //得到用户选定的那一行的第三个字段值
gemail=table.getValueAt(row, 3).toString(); //得到用户选定的那一行的第四个字段值
return !(gb_h.equals(data[row][0])&&gx_m.equals(data[row][1])&&gd_h.equals(data[row][2])&&gemail.equals(data[row][3]));
}
}
哪位大侠帮帮忙???小弟很急。
能帮忙具体写写代码吗??谢谢了。
我写了一下,但是没成功!
希望大侠们帮帮忙!!!!
if(e.getActionCommand().equals("审核")){
boolean f=new MyTableModel().isCellEditable(rows,0);//调用
if(f==true){ ???????????判断好像出错了,不会判断
System.out.println("成功");
}else{
System.out.println("失败");
}
}
class MyTableModel extends DefaultTableModel{
public boolean isCellEditable(int row, int column) {
row = table.getSelectedRow(); //得到用户选定的那一行
gb_h=table.getValueAt(row, 0).toString(); //得到用户选定的那一行的第一个字段值
gx_m=table.getValueAt(row, 1).toString(); //得到用户选定的那一行的第二个字段值
gd_h=table.getValueAt(row, 2).toString(); //得到用户选定的那一行的第三个字段值
gemail=table.getValueAt(row, 3).toString(); //得到用户选定的那一行的第四个字段值
return !(gb_h.equals(data[row][0])&&gx_m.equals(data[row][1])&&gd_h.equals(data[row][2])&&gemail.equals(data[row][3]));
}
}
解决方案 »
- SimpleDateFormat和Date的区别
- 做了一段时间的JAVAWEB不知道要朝哪方面发展了。。
- java连接数据库问题
- 用遗传算法写了一个程序 但不能得到预期的结果,自己认为是写的有问题,也能主要是myFitnessFunction有问题吧,高手请进
- 请大家谈一下 "JavaBean" 在JSP中的使用,越详细越好,不要认为学习者很聪明,其实您的任何一个观点都能给大家很多启发!谈得好再加分.
- 关于java的学习
- 初级问题,请大家帮忙
- 请问怎么把JFrame中的最大化按钮去掉
- 大家在处理大容量数据比如十万条记录的分页是怎么做的呢?欢迎近来讨论.
- 兄弟们,我已经有一个月没干活了,闲的发慌啊!
- 关于FOR循环
- 关于JMX的类装在
public void valueChanged(ListSelectionEvent e) {
row = table.getSelectedRow(); //得到用户选定的那一行
gb_h=table.getValueAt(row, 0).toString(); //得到用户选定的那一行的第一个字段值
gx_m=table.getValueAt(row, 1).toString(); //得到用户选定的那一行的第二个字段值
gd_h=table.getValueAt(row, 2).toString(); //得到用户选定的那一行的第三个字段值
gemail=table.getValueAt(row, 3).toString(); //得到用户选定的那一行的第四个字段值
if (......) //自己加判断条件
btn.setEnabled(true); //可以审核
else
btn.setEnabled(false); //不可审核
}
});
if(e.getActionCommand().equals("审核")){
editables[row] = false;
// 接着将当前row编辑状态移除
}
class MyTableModel extends DefaultTableModel{
public boolean isCellEditable(int row, int column) {
return editables[row];
}
}
如果 btn.setEnabled(true); //可以审核
btn.setEnabled(false); //不可审核
就算把按钮设置成隐藏或者显示,可是用鼠标双击一下JTable中的单元格,照样可以进入编辑状态啊。
我想可不可以选择“审核”按钮后,让选中的那行记录中所有单元格都不能编辑(就是用鼠标怎么单击双击都不能进入)这样可以实现吗?或者还有更好的办法吗?????? 二楼的代码有点没大明白,可不可以再详细一下。
if(e.getActionCommand().equals("审核"))
{
editables[row] = false; // 设置当前审核的行编辑状态值为false,row是当前审核的行号
// 接着将当前row编辑状态移除
}
class MyTableModel extends DefaultTableModel
{
public boolean isCellEditable(int row, int column)
{
return editables[row]; // 返回对应行的可编辑状态
}
}
// 接着将当前row编辑状态移除 ?????????????、????
能再帮忙写写代码吗?我刚学JAVA。
帮帮忙,各位大侠。
6楼和8楼的大侠 // 接着将当前row编辑状态移除
这句话是说再把用户当前选定的行设置为true,表示可编辑吗???
editables[rows] 这个就是保存编辑状态的变量,也许你不是按我说的方法做的,那得看你自己的了祝你好运