当任务栏位置或大小更改时,如何移动Jframe



我有且未装饰的jframe,无法解析,屏幕的底部/中心放置。JFRAME具有100像素的高度和1000像素宽度。如果任务栏改变了他的位置,我想根据任务栏的新位置和大小放置Jframe。

我已经知道如何将Jframe放置在任务栏的上方,只需要知道是否有任何方法可以"聆听"此更改并设置Jframe自动化的新位置。我正在使用Eclipse和JDK 1.8

编辑:我不是在询问侦听屏幕更改。关于任务栏更改。我可以处理屏幕更改。

检测用户(Java侦听器?)更改屏幕分辨率更改的答案似乎表明没有内置支持检测本机窗口系统的这种类型的更改。

一个答案之一暗示使用诸如JNA或JNI之类的东西将其挂接到本地事件中。不幸的是,他们没有提供有关要挂接的基础Windows事件的任何信息。

另一个选项是运行一个背景线程,该背景线程会定期检查插图是否已更改,然后相应地调整JFrame的位置。您需要以投票率来探讨,但我怀疑您可以每秒几次而不会损害系统性能。

最新更新