Java Swing;如何使程序在屏幕的最右边开始?

时间:2010-09-24 14:39:33

标签: java swing

默认情况下,我的Swing程序从显示器的左上角开始。有没有办法让它突然出现在右侧?

双显示器怎么样?我可以让它在正确的显示器上弹出吗?

感谢。

卡罗

3 个答案:

答案 0 :(得分:7)

关于使用GraphicsEnvironment做类似的事情,有很多问题/答案。

您可以使用GraphicsEnvironment.getLocalGraphicsEnvironment().getScreenDevices()获取所有监视器,然后调用GraphicsDevice#getConfigurations然后GraphicsConfiguration#getBounds以获取每个监视器的大小和位置,然后使用您的高中几何体来查找“正确”的监视器。 (请注意,真正的多显示器设置可以将它们放在任意位置。)

答案 1 :(得分:4)

假设您不想掩盖任务栏,则应使用getMaximumWindowBounds。

Java API

http://www.javabeginner.com/java-swing/java-jframe-class-example

  

居中JFrame的

     

默认情况下,显示Jframe   屏幕的左上角。   在指定的位置显示帧   位置,你可以使用   JFrame中的setLocation(x,y)方法   类。这个方法放置了   框架的左上角   location(x,y)。

右上角的伪代码如下所示:

yourJFrame.setLocation(
  GraphicsEnvironment.getMaximumWindowBounds().getWidth() - 
  yourJFrame.getWidth(), 0);

答案 2 :(得分:0)

要在其他初始位置显示,请查看JFrame.setLocation()

要在其他屏幕上显示,请查看GraphicsEnvironment.getScreenDevices()的可用信息。