Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我正在调试使用 JXTable 显示少量数据(< 100 个条目)的遗留代码。所有功能都有效,但当表格中至少有一个条目时,如果显示窗格,CPU 使用率将攀升至 95% 以上。仪器表明,highlight 方法每毫秒调用几次。仅当表格可见(选择了不同的选项卡)时才调用 highlight 方法,这是有道理的。我正在尝试在一个小样本中复制它,但这还不行。我只是想知道是否有人看到过类似的行为并提出了解决方案。库:swingx-1.0.jar Java:jdk1.8.0_144
这是我的*代码。在 cellRenderer() 中调用了 setRowHeight()。这会导致窗格被标记为脏。所以下一个循环,它会执行 repaint()。repaint() 调用我的 cellRenderer()。因此,只要窗格可见,就会创建一个重绘循环。解决方案是删除对 setRowHeight() 的调用,因为无论如何都不需要它。*我说我的代码是因为我现在对它负责。这个问题早在我加入公司之前就已经出现了。