删除 JTable 中的单元格编辑器边框 (Windows LaF)

2024-01-04

我有一个基于 JTextField 的单元格编辑器,带有这个丑陋的黑色边框(忽略左侧的插入符号):

有没有办法将其删除,使其看起来与此类似?


创建表后,您可以尝试以下操作:

DefaultCellEditor editor = (DefaultCellEditor)table.getDefaultEditor(Object.class);
JTextField textField = (JTextField)editor.getComponent();
textField.setBorder( null );

Edit:

上述方法不起作用,因为 JTable 使用GenericEditor它是表的内部类,它扩展了 DefaultCellEditor 并为表添加了额外的功能。

添加的一项功能是管理边框:“红色”表示错误,“黑色”表示有效数据。因此,编辑器会不断重置边框。

或者另一种方法是这样的:

JTextField textField = new JTextField();
textField.setBorder( null );
DefaultCellEditor editor = new DefaultCellEditor( textField );
table.setDefaultEditor(Object.class, editor):
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

删除 JTable 中的单元格编辑器边框 (Windows LaF) 的相关文章

随机推荐