在 Ubuntu/LTSP 中将应用程序焦点设置为 java 程序
我们正在将 LTSP 与瘦客户端结合使用。我们正在使用它来运行 Java-Swing-Application。用户不应该能够执行任何其他操作,因此我们使用 shell 脚本来启动应用程序,而不是 Gnome-Session。
几乎一切都很完美,但有一件事:当瘦客户端启动时,应用程序也会启动,但没有获得焦点。我们必须在应用程序内用鼠标单击一次,这不太好,因为该应用程序被设计为无需鼠标即可使用。
我没有发现任何有用的东西,我的主机上的 toFront() 没有成功。
有没有人有更好的建议??
We are using LTSP with Thin-Clients. We are using it, to run a Java-Swing-Application. The users should not be able to do anything else, so instead of a Gnome-Session we use a shell-script to start our application.
Nearly everything works perfect but one thing: When the Thin-Client starts, the application starts too but doesn't receive the focus. We have to click once with the mouse inside the application, which is not that good, because the application is designed to be used without a mouse.
I didn't found anything useful, a toFront() on my Main Frame wasn't successful.
Has anyone any better suggestions??
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以使用方法 java.awt.Window#setAlwaysOnTop(boolean) 来获取焦点,并在第一次用户交互后重置alwayOnTop 属性。
You can use method
java.awt.Window#setAlwaysOnTop(boolean)
to grab the focus and after the first user interaction reset thealwayOnTop
property.您可以尝试在 JFrame 可见时立即调用
requestFocus
:You could try to call
requestFocus
on your JFrame as soon as it becomes visible: