# DisplayMode Problem seit Windows 10



## Grevak (8. Aug 2015)

Hallo,

ich habe ein Problem mit meinen Pong Spiel.

Exception:
Exception in thread "main" java.lang.IllegalArgumentException: Invalid display mode
   at sun.awt.Win32GraphicsDevice.setDisplayMode(Unknown Source)
   at de.grevak.main.Main.main(Main.java:27)

Code Abschnitt:

```
DisplayMode displayMode = new DisplayMode(800, 600, 16, DisplayMode.REFRESH_RATE_UNKNOWN);
GraphicsEnvironment environment = GraphicsEnvironment.getLocalGraphicsEnvironment();
GraphicsDevice device = environment.getDefaultScreenDevice();
device.setFullScreenWindow(frame); // frame wird außerhalb dieses Abschnittes erstellt
device.setDisplayMode(displayMode); // hier ist zeile 27
```

Das Oben soll Vollbild machen.
Das hat auf Windows 7 noch super geklappt, aber seit Windows 10 kommt nur ein Weißer Bildschirm im Vollbild und das wars.

Und Eclipse zeigt die obige Exception an.

MfG Grevak


----------



## Grevak (9. Aug 2015)

Problem gelöst, aus irgendeinen Grund musste ich die Bittiefe auf 32 stellen...


----------



## RalleYTN (11. Aug 2015)

Am besten ist es wenn du einen DisplayMode durch diesen Code erfasst

```
DisplayMode resolution = null;
int width = 800; //Breite des DisplayModes, den du haben willst;
int height = 600; //Höhe des DisplayModes, den du haben willst;

for(DisplayMode mode : device.getDisplayModes()) {
    if(mode.getWidth() == width && mode.getHeight() == height) {
        resolution = mode;
        break;
    }
}
```
Vorteil dieser Methode:

Du erhältst immer einen DisplayMode, der keine Exception schmeisst(vorrausgesetzt deine Grafikkarte und der Monitor unterstützen die Größe des DisplayModes)
Wenn du auch noch die BitDepth spezifizieren willst, musst du bloß die Abfrage etwas erweitern


----------

