我有一个包含一些组件和菜单的框架。框架和菜单中的某些按钮打开JFileChooser(每次都是一个新实例)来打开和保存文件。
我的问题很简单,每当我用Java打开JFileChooser并按OK时,菜单就隐藏在框架中的其他控件后面。这意味着当我打开菜单时,某些菜单项无法显示。
但是,如果我没有在JFileChooser中按OK但按下取消,则不会发生这种情况。我假设在FileChooser获得“OK”后如何重新绘制帧有一些错误。正如我所说,组件的堆叠似乎是错误的。
顺便说一句,我没有混合使用Swing和AWT组件。我的所有组件都是Swing组件。
编辑:这是我的代码
final JFileChooser fileChooser = new JFileChooser();
fileChooser.setCurrentDirectory(new File(Books.getDirectory()));
fileChooser.setAcceptAllFileFilterUsed(false);
fileChooser.setFileFilter(new XmlFilter());
int returnVal = fileChooser.showOpenDialog(Main.this);
if (returnVal == JFileChooser.APPROVE_OPTION) {
// OK was pressed
}
有什么想法吗?