我目前正在开发一个在后台运行的Java跨平台(windows和mac os x)应用程序,并在某些用户或系统的事件上显示弹出窗口,如“复制和粘贴”或程序启动。
然而,我想首先检测一下,如果任何其他程序,不一定用Java开发,是以全屏模式运行。在那种情况下,我不会显示我的窗口。 例如,当用户正在全屏观看电影时(媒体播放器...),一个Powerpoint演示......
所以这是我的问题: 1.有没有办法用Java语言做这样的事情? 2.如果不可能,我将使用另一种语言进行“全屏模式检测器”,但必须能够与我的Java应用程序通信才能通知全屏窗口。 3.如果不可能(1):你知道最好的语言吗?我在C#或C ++ MFC(How to check if an other program is running in fullscreen mode, eg. a media player)中找到了其他解决方案。
任何想法都会非常有用。 非常感谢。
塞巴斯蒂安
答案 0 :(得分:1)
最后,我为每个操作系统执行了一个外部程序,检查活动窗口是否处于全屏模式,并将结果写入标准输出。我的Java应用程序根据操作系统调用好程序并读取结果。
我用过:
最难的部分是Mac OS X版本。
如果您对这些计划感兴趣,请不要犹豫。
再次感谢您的帮助!
答案 1 :(得分:0)
你可以用java.awt.Robot捕获屏幕,你能实现基于截图的算法吗?
答案 2 :(得分:0)
最简单的解决方案是为用户提供启用/禁用弹出窗口的选项。这样他们就可以选择何时接收弹出窗口。