tags:

views:

189

answers:

2

Hello!

I have two different-sized monitors, connected together using (I believe) TwinView.

I tried

System.out.println(Toolkit.getDefaultToolkit().getScreenSize());

and get

java.awt.Dimension[width=2960,height=1050]

which is true if you count both monitors together.

Instead of this, I would like to be able achieving one of the following:

  • getting resolution of the current monitor
  • getting resolution of the main monitor
+9  A: 

you'll want to use the GraphicsEnvironment.

In particular, getScreenDevices() returns an array of GraphicsDevice objects from which you can read the width/height of the display mode.

Example:

GraphicsEnvironment g = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice[] devices = g.getScreenDevices();

for (int i = 0; i < devices.length; i++) {
 System.out.println("Width:" + devices[i].getDisplayMode().getWidth());
 System.out.println("Height:" + devices[i].getDisplayMode().getHeight());
}
yx
thank you very much!
ivan_ivanovich_ivanoff
A: 

Unfortunately this does not work for me. There is only this single entry in the array:

Width:3200
Height:1024
helpless
use a comment...
Kartoch
The "answer" button is for answers.
ivan_ivanovich_ivanoff