【发布时间】:2015-06-16 04:22:27
【问题描述】:
我有一个工作应用程序,它在 Java 1.6 和 1.7 甚至 1.8 update 31 中都能正常工作。我今天刚刚更新了我的 Java 1.8 update 45,发现我的应用程序界面有问题。例如: 这是我的工作应用程序屏幕。这是应该的,但更新后它变成了这样(下图): 一旦我得到无法运行的界面,我需要单击该区域,或者我需要最小化应用程序并再次打开以恢复正常。
代码
frame.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE);
tab.setTabPlacement(2);
frame.add(tab, BorderLayout.SOUTH);
ComparePanelMin cmp = new ComparePanelMin();
tab.add("Compare", cmp);
ReportPanelMin rp = new ReportPanelMin();
tab.add("Reporting (For Single Compare)", rp);
ChangeListener changeListener = new ChangeListener() {
@Override
public void stateChanged(ChangeEvent changeEvent) {
idx = tab.getSelectedIndex();
}
上面的代码在标签之间切换。非常感谢任何建议或参考链接。
已编辑
死锁
【问题讨论】:
-
考虑提供一个runnable example 来证明您的问题。这不是代码转储,而是您正在做的事情的一个例子,它突出了您遇到的问题。这将减少混乱并获得更好的响应
-
我认为 JVM 无法绘制/重绘 JFrame。通过最小化和恢复窗口,您将强制 JVM 重新绘制,从而获得正确的输出。它会抛出任何异常吗?
-
@Blip 不,系统级别没有任何异常。有没有我们可以在JVM级别记录文件的地方。检查 JVM 是否无法绘制/重绘 Jframe。
-
您是否尝试从命令提示符运行?
-
@Blip 这是一个 Java Swing 项目,不知道如何在 CMD 中运行它。当我运行主类时,它显示错误,因为找不到我在主类中定义的其他类。