每次我在 JFrame 上调用 pack() 方法时,它都会移动到启动时的初始位置。当我尝试获取 JFrame 的位置(getLocation、getLocationOnScreen)时,无论我移动窗口,它仍然与初始位置相同。我正在使用 Awesome WM 运行 Archlinux。请帮忙。
谢谢 Uiii
编辑:我只是想要能够在主窗口中显示或隐藏一些组件(这会导致布局调整大小),而无需将窗口移动到初始位置。
EDIT2:所以我刚刚发现Paŭlo(来自评论)是正确的。它在 Xfce 中运行良好,但在 Awesome WM 中却不行。
EDIT3:我真的不明白你为什么要否决这个问题。这是我第一次使用 pack() 函数,所以我不知道它的正确行为是什么。如果窗口的位置会改变,java API 文档中没有说明。我只是在我用作窗口管理器的 Awesome WM 中第一个使用它,所以我不知道它应该以另一种方式表现。我试图在互联网上找到一些关于它的东西,但一无所获。我认为在我找到解决方案后,这个问题可能对某人有用。当然还有其他 Java 开发人员正在使用 Awesome WM(或一些类似问题的人)。