【发布时间】:2024-01-21 14:59:01
【问题描述】:
如果框架设置了 setAlwaysOnTop() 并且某个对话框正在运行,则对话框将显示在框架下方。我想在框架顶部显示它。换句话说,即使设置了 setAlwaysOnTop(),对话框仍应位于框架顶部。
有人可以帮我吗?
编辑:
示例代码:
public MainFrame() {
super("Potatator");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
setAlwaysOnTop(true);
JOptionPane.showMessageDialog(this, "I want to set this dialog on top of frame");
repaint();
}
【问题讨论】:
-
使用另一个布局怎么样?例如GridBagLayout 等?
-
对话框是否有框架作为父级?如果没有测试,我会假设模态对话总是在他们的父母之上..
-
为了获得更好的帮助,请尽快发布 SSCCE/MCVE,简短、可运行、可编译,然后在这里阅读有关如何在对话框中使用模态作为使用其他 Swing 功能的一部分的 Oracle 教程
-
@Zorlan 布局和 setAlwaysOnTop() 方法之间有什么联系?
-
@Duncan 是的,对话框有框架作为父母,就像我添加到我的帖子中一样。我虽然喜欢你,但它不起作用。