重用 TableCellEditor 对象

发布于 2024-07-21 01:52:33 字数 200 浏览 11 评论 0原文

所以我有很多表格和很多单元格编辑器,里面有很多东西。 我想我应该重用它们,而不是每次都执行 new() ,因为整个事情都设置了 getTableCellEditorComponent() 但仍然,几乎每次我尝试这样做时,我都会在旧单元格中得到“剩余物”,以及其他奇怪的情况。 我通常可以通过每次重新制作一个新的来解决问题,但这很糟糕吗?

谢谢! 约书亚

So I have lots of tables and lots of cell editors, with lots of stuff in them. I figured I should be reusing them, not doing new() every time since the whole thing is set getTableCellEditorComponent() but still, nearly every time I try to do it, I get "leftovers" in old cells, and other oddities. I can usually correct the problem by just making a new one every time, but is this bad?

Thanks!
Joshua

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

三人与歌 2024-07-28 01:52:33

JTable 非常庞大。 虽然 TableCellEditor 中的 JComponent 子类也可能相当大,但并不值得担心。 此外,最好避免共享可变对象,尤其是像 Swing 组件这样复杂的对象。 每个组件生命周期有一个父组件似乎是一个不错的选择。

JTables are huge. While the JComponent subclass in a TableCellEditor may also be quite large, it isn't really worth worrying about. Further, it is a good idea to avoid sharing mutable objects, particularly ones as complicated as Swing components. Having one parent per component lifetime seems a good option.

素年丶 2024-07-28 01:52:33

由于每个 JTable 始终有零个或一个编辑器,因此 getTableCellEditorComponent() 调用的性能并不是非常关键。 不过,在处理表渲染器时必须避免创建新组件。

Since there is always zero or one editor per JTable, the performance of the getTableCellEditorComponent() call is not extremely critical. Creating new components must be avoided when dealing with the table renderer, though.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文