在需要的位置显示 JFrame

Show JFrame in desire location

我正在开发一个使用 SystemTray 的应用程序。我的代码中的每件事都很好。当我单击 SystemTray 图标时,它会在给定位置显示我的 jFrame。但我想在我的 SystemTray 图标下方显示我的 jFrame。 这可能吗。请为此建议一些代码。我可以通过给出正确的坐标在我的 OS(linux) 中显示它,但是如果我 运行 这个程序在不同的 OS 或不同的屏幕尺寸系统中,我的代码就会失败.

据我所知,使用Swing无法获取屏幕上的SystemTray图标坐标。另一种解决方法是在单击托盘图标时捕获鼠标位置。

Point p = MouseInfo.getPointerInfo().getLocation();
int mouseX = (int) p.getX();
int mouseY = (int) p.getY();

请记住,如果您打算使用键盘导航至托盘图标,则此解决方案对您没有帮助。