量産メモ帳

忘れっぽいのでメモを残しています。浅く適当に書きます。

Javaでスクリーンサイズを取得する方法

スポンサーリンク

シングルモニターの場合、下記のいずれかでスクリーンサイズを取得できる。


しかしマルチモニターの場合、これだとメインモニターのスクリーンサイズしか取得できない。
解決策として、GraphicsConfiguration に記載されているコードをそのまま使えば良い。


Rectangle virtualBounds = new Rectangle();
GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice[] gs = ge.getScreenDevices();
for (int j = 0; j < gs.length; j++) {
    GraphicsDevice gd = gs[j];
    GraphicsConfiguration[] gc = gd.getConfigurations();
    for (int i=0; i < gc.length; i++) {
        virtualBounds = virtualBounds.union(gc[i].getBounds());
    }
}