一个jtable,假设第1行第二列 出错,当光标移开时,要求提示 error信息。
error窗口点击ok后,要求 第1行第二列单元格显示红色背景,并且设置光标。还有一个要求,比如 该单元格原来是 2,变为空后,提示error信息,点ok后,要求该单元格的值变回为原来的2.请问该怎么实现。
error窗口点击ok后,要求 第1行第二列单元格显示红色背景,并且设置光标。还有一个要求,比如 该单元格原来是 2,变为空后,提示error信息,点ok后,要求该单元格的值变回为原来的2.请问该怎么实现。
--》该单元格为必须输入项目,当由 有内容变为 null时,要求报错。
2、JTable监听鼠标事件,就是addMouseListener,然后在mouseExited里面做检测的事情;
3、检测到不正确就弹出提醒;
4、从第一步保存的值里面拿出原来的值,然后填回去关于你要改变某一单元格背景颜色的问题,这种例子很多的,重写下DefaultTableCellRenderer,随便搜搜救找得到例子。其实你如果只是把字体变成红色会好点,只要返回一个html格式的String就好了。
再看看上面的描述有什么遗漏的呃,那个mouseExited的event可以通过getPoint()取到当前点,然后JTable的rowAtPoint,columnAtPoint就可以得到当前单元格了
如果用 focusLost事件,则当光标离开,放到不可编辑单元格时,不触发该事件。
如果用 tableChanged,
(4、从第一步保存的值里面拿出原来的值,然后填回去 )setValueAt方法也触发tableChanged事件。导致无线弹出 对话框。该用什么事件呢?
还有ListSelectionListener呢,保存原来的[row,col],第二次在捕抓到事件,对比一下不等就开始检测。这样做也可以实现的,这样的方法很多另外,关于你说的无限对画框,在tableChanged弹对画框加个条件,用来判断区分是你自己set回默认值还是用户自己设的值,加个boolean不就可以了吗?