我有一个Java swing应用程序,其中包含三个JComboBoxe
的面板,这些面板无法正确绘制
combox框只显示为右侧的向下箭头,但没有当前所选值的标签
如果窗口的大小调整大小甚至一个像素,则框会正确重绘。
我的所有谷歌搜索都指向revalidate()
上的JPanel
来解决此问题,但这对我没有用。
在updateUI()
上调用JPanel
已将其从始终显示错误更改为显示错误的一半时间。
有没有其他人看过这个并找到了一种强制重新组合框的不同方法?
答案 0 :(得分:6)
您能否提供一些有关如何将组合框添加到JPanel的更多信息?这在Swing中是很常见的事情所以我怀疑这是一个JVM问题,但我想任何事都有可能。
具体来说,我会仔细检查以确保您没有从任何后台线程访问GUI。在这种情况下,也许您正在从数据库或其他东西中读取选项并从后台线程更新JComboBox,这在Swing中是一个很大的禁忌。请参阅SwingUtils.invokeLater()。