JTable 修改某行后, 行数据验证失败(如:主键冲突) , 禁止选取其它行

Sidneylee 2013-03-09 01:52:24

JTable 修改某行后, 行数据验证失败(如:主键冲突) , 禁止选取其它行, 弹出对话框提示用户有主键冲突,或某字段不能为空。取消对话框后,当前行仍选择, 除非按下ESC键,取消修改。
...全文
223 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
raistlic 2013-03-13
  • 打赏
  • 举报
回复
自己定义了 TableCellEditor 以后,设置到 JTable 的方法跟 TableCellRenderer 类似,可以按数据类型设置: jtable.setDefaultEditor(Class<?>, TableCellEditor); 也可以给某列设置: jtable.getColumnModel().getColumn(int).setCellEditor(TableCellEditor);
raistlic 2013-03-13
  • 打赏
  • 举报
回复
自定义主键那一列使用的 TableCellEditor 下面是 CellEditor 里面 stopCellEditing 方法的源码注释:

    /**
     * Tells the editor to stop editing and accept any partially edited
     * value as the value of the editor.  The editor returns false if
     * editing was not stopped; this is useful for editors that validate
     * and can not accept invalid entries.
     *
     * @return	true if editing was stopped; false otherwise
     */
    public boolean stopCellEditing();
Sidneylee 2013-03-09
  • 打赏
  • 举报
回复
有经验的程序员一看就知道, 就是表格中数据行的验证。
Sidneylee 2013-03-09
  • 打赏
  • 举报
回复
目的就是,某条件成立,禁止在表格中选择其它行,只可以在当前行选择不同的列,修正数据,修条件不成立时,则可以在表格中任意选择单元格了.
Sidneylee 2013-03-09
  • 打赏
  • 举报
回复
编辑后,焦点离开此行时,我会验证主键有无冲突, 如果存在冲突,则焦点不可以失去,除非按下ESC键,放弃编辑 (如果是新增行,则删除;修改行,则复原数据)。 我这里说的焦点,不是指光标,是当前选定的单元格, 无论何时,表格中都有一个选定cell
jlu_lamp_lamp 2013-03-09
  • 打赏
  • 举报
回复
你要解决什么问题呢? 要锁定行不可编辑吗?
内容概要:本文围绕基于风光储能和需求响应的微电网日前经济调度问题,提出了一套完整的Python代码实现方案。研究综合考虑风能、光伏等可再生能源的出力不确定性、储能系统的动态充放电特性以及需求侧响应机制,构建了以最小化系统综合运成本为目标的优化调度模型。该模型充分体现了对可再生能源的高效消纳、系统经济性提升与供需平衡调控的能力,通过Python编程结合优化求解器实现了模型的求解与仿真验证,为微电网能量管理系统的设计与科研分析提供了可复现的技术路径与实践参考。; 适合人群:具备一定Python编程基础和电力系统优化调度知识的科研人员、工程技术人员及高校电气工程、能源系统等相关专业的研究生。; 使用场景及目标:①应用于微电网、智能配电网及综合能源系统的科研建模与仿真分析;②帮助读者深入理解含高比例可再生能源的电力系统日前调度建模方法、目标函数构造与约束条件处理技巧;③为实际工程中实现低碳、经济、可靠的微电网运提供算法支持与决策依据。; 阅读建议:建议读者结合文档中的代码实例,系统学习优化模型的数学表达与编程实现过程,重点关注变量定义、目标函数构建、系统约束(如功率平衡、储能动态、机组出力等)的编码实现,并尝试调整负荷、新能源出力等输入数据多场景仿真,以深入掌握微电网调度策略的灵敏度分析与优化效果评估方法。

62,621

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧