在我的JTable中,我有两个可编辑的数字列。两列的编辑器都扩展了AbstractCellEditor,并使用JFormattedTextField作为编辑组件。

问题在于输入的格式取决于行中另一列的值。如果满足条件X,则小数位数应为Y,否则应为Y + 2。

我试图覆盖getTableCellEditor(..)方法以将TableCellEditor与每行关联。请参见this example。但是,由于我有两个可编辑的列,因此每行共享一个TableCellEditor对象会产生一些非常奇怪的结果。我认为这不是合适的解决方案。

任何有关如何解决此问题的想法将不胜感激!

谢谢!

最佳答案

您可以通过创建另一个TableCellEditor来解决该问题,该TableCellEditor将委派给它的两个分包商之一:当前单元格编辑器的实例。您需要在该列中注册该uber-celleditor,并在Swing使用它时让它委派。

07-24 15:03