我正在开发一个由运行在Microsoft PowerPoint之上的JFrame
组成的应用程序。它是一个看不见的框架,以便您可以看到PowerPoint正在显示的内容。此框架具有我希望能够单击的某些按钮,而PowerPoint演示文稿处于“PowerPoint演示模式”(全屏)。
问题在于,当我单击框架中的按钮时,PowerPoint最小化。我希望在单击按钮时将PowerPoint保持为全屏。这是我用来将框架设置在PowerPoint前面的代码。
jframe.setUndecorated(true);
jframe.setBackground(new Color(0, 255, 0, 0));
jframe.setVisible(true);
jframe.setResizable(false);
jframe.setAlwaysOnTop(true);
我考虑过的一些解决方案是:
jframe.setFocusable(false);
,以便在PowerPoint应用中维护焦点,而不是更改为我的应用。我还在JPanel
中使用了该方法,并在框架中使用了按钮。但它似乎没有做到这一点。Robot
类来按cmd + tab(或windows中的alt + tab),并且由于最后一个具有焦点的应用程序是PowerPoint,它会重新进入全屏,我的应用仍然在顶部。问题是用户会注意到这一点,并且应该有一个更简单的方法。