如何在java中获取屏幕宽度?

2022-09-01 01:13:54

有谁知道如何在java中获取屏幕宽度?我读了一些关于工具包方法的东西,但我不太确定那是什么。

谢谢 安德鲁


答案 1
java.awt.Toolkit.getDefaultToolkit().getScreenSize()

答案 2

以下是我使用的两种方法,它们考虑了多个监视器和任务栏插入。如果您不需要将这两种方法分开,当然可以避免两次获取图形配置。

static public Rectangle getScreenBounds(Window wnd) {
    Rectangle                           sb;
    Insets                              si=getScreenInsets(wnd);

    if(wnd==null) { 
        sb=GraphicsEnvironment
           .getLocalGraphicsEnvironment()
           .getDefaultScreenDevice()
           .getDefaultConfiguration()
           .getBounds(); 
        }
    else { 
        sb=wnd
           .getGraphicsConfiguration()
           .getBounds(); 
        }

    sb.x     +=si.left;
    sb.y     +=si.top;
    sb.width -=si.left+si.right;
    sb.height-=si.top+si.bottom;
    return sb;
    }

static public Insets getScreenInsets(Window wnd) {
    Insets                              si;

    if(wnd==null) { 
        si=Toolkit.getDefaultToolkit().getScreenInsets(GraphicsEnvironment
           .getLocalGraphicsEnvironment()
           .getDefaultScreenDevice()
           .getDefaultConfiguration()); 
        }
    else { 
        si=wnd.getToolkit().getScreenInsets(wnd.getGraphicsConfiguration()); 
        }
    return si;
    }

推荐