
import java.awt.DisplayMode;
import java.awt.GraphicsDevice;
import java.awt.GraphicsEnvironment;
import java.awt.Window;

/**
 *
 * @author lans
 */
public class DisplayModesCheck {

    public static void main(String[] args) throws InterruptedException {
        if (GraphicsEnvironment.isHeadless()) {
            System.out.println("Can't run, headless mode.");
            return;
        }

        GraphicsEnvironment env = GraphicsEnvironment.getLocalGraphicsEnvironment();
        GraphicsDevice device = env.getDefaultScreenDevice();
        Window root = new Window(null);
        device.setFullScreenWindow(root);
        DisplayMode[] modes = device.getDisplayModes();
        DisplayMode originalMode = device.getDisplayMode();
        DisplayMode mode = modes[(int) (Math.random() * modes.length)];
        System.out.printf("Setting mode: %dx%d, %d bit depth, %dHz refresh rate.",
                mode.getWidth(), mode.getHeight(),
                mode.getBitDepth(), mode.getRefreshRate());
        device.setDisplayMode(mode);
        Thread.sleep(3000);
        device.setDisplayMode(originalMode);
        Thread.sleep(3000);
        System.exit(0);
    }

}
