代码之家  ›  专栏  ›  技术社区  ›  Carlo del Mundo

javaswing;如何使程序在屏幕最右边启动?

  •  7
  • Carlo del Mundo  · 技术社区  · 14 年前

    默认情况下,我的Swing程序从监视器的左上角开始。有没有办法让它在右手边弹出?

    双监视器呢?我能把它放到右边的显示器上吗?

    谢谢。

    3 回复  |  直到 14 年前
        1
  •  3
  •   Thomas Langston    14 年前

    假设您不想覆盖任务栏,那么应该使用getMaximumWindowBounds。

    Java API

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

    定心框架

    默认情况下,Jframe显示在 屏幕的左上角。 在指定位置显示帧 位置,您可以使用 JFrame中的setLocation(x,y)方法 班级。此方法放置 框架左上角

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

    yourJFrame.setLocation(
      GraphicsEnvironment.getMaximumWindowBounds().getWidth() - 
      yourJFrame.getWidth(), 0);
    
        2
  •  6
  •   Geoffrey Zheng    14 年前

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

    GraphicsEnvironment.getLocalGraphicsEnvironment().getScreenDevices() 拿到所有的监视器,然后打电话 GraphicsDevice#getConfigurations 然后 GraphicsConfiguration#getBounds 要获得每个显示器的大小和位置,请使用高中几何图形找到“正确”的显示器。(请注意,真正的多监视器设置可以将它们放置在任意位置。)

        3
  •  0
  •   Riduidel    14 年前

    要在另一个初始位置显示,请查看 JFrame.setLocation()

    要在另一个屏幕上显示,请查看 GraphicsEnvironment.getScreenDevices() .