Java JPanel 重绘问题

8
我有一个Java Swing应用程序,其中包含三个JComboBoxes的面板,但它们无法正确绘制。这些组合框只会显示在右侧的下箭头,但没有当前选定值的标签。如果窗口调整大小一个像素,这些框将重新绘制正确。
我所有的谷歌搜索都指向在JPanel上调用revalidate()来解决此问题,但这对我没有起作用。在JPanel上调用updateUI()已将其从始终显示不正确更改为一半时间显示不正确。
是否有其他人看到了这个问题并找到了不同的方法来强制重绘组合框?
1个回答

6

您能否提供更多关于如何在JPanel中添加组合框的信息?在Swing中这是一件非常常见的事情,所以我怀疑这不是JVM的问题,但我认为任何事情都有可能。

具体来说,我建议您仔细检查,确保您没有从任何后台线程访问GUI。在这种情况下,也许您正在从数据库或其他地方读取选项,并从后台线程更新JComboBox,这在Swing中是不能接受的。请参考SwingUtils.invokeLater()。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接