ImageViewer mit Slideshow und Multiple Monitor Support

Slideshow auf zweitem Monitor?

Leider gibt’s das so gut wie gar nicht, das einzige was ich finden konnte ist der FastStone ImageViewer. Der hat allerdings so seine Macken beim Abspielen von ganzen Verzeichnissen und noch so ein paar Seltsamkeiten. Also was tun? Selber machen!

ImageViewer in Java

Auch für Java ist das Angebot gross, wenn man einen Bildbetrachter sucht, leider kann kein einziger seine Slideshow auch auf einem zweiten Monitor darstellen. Wenn man jedoch die APIs studiert, stellt man fest, dass Bilder laden und anzeigen eh nur ein Zweizeiler ist und auch das Umschalten in der FullScreen-Mode geht seit Java 1.4 ganz einfach …


Herausgekommen ist ein Miniprojekt mit einer handvoll Klassen und noch völlig ohne GUI, aber es zeigt Bilder, komplette Verzeichnisse und ist über eine Property-Datei bzw. gleichnamige Kommandozeilen Optionen gut einstellbar. Wer mag kann das inkl. Source Code hier downloaden.

Leider doch nicht Fullscreen

Allerdings stellte sich beim Benutzen des FullScreenExclusive Modes noch ein Problem heraus: zwar ist dieser Modus (wie der Name sagt) exklusiv, d.h. der Bildschirm gehört einem allein, man kann drauflos zeichnen wie man will, sogar die Farbtiefe und die Auflösung lassen sich umschalten, aber …

Leider wird der FullScreenExclusive-Mode nach einem Suspend und Resume from RAM nicht automatisch wieder hergestellt, das TaskBar-Icon der betreffenden Programms bleibt "minimiert" und der FullScreenModus aus. Erst wenn man das Icon erneut anklickt, dann erscheint die Fullscreen Grafik wieder.

Das war für meine Anwendung aber ein KO-Kriterium.

"Halber" FullScreen

Der Ausweg ist aber fast genauso einfach zu bewerkstelligen. Man macht das Fenster einfach "rahmenlos" (setUndecorated(true)), vergrößert es auf die richtige Grösse des zweiten Bildschirms und schiebt es anschließend an die richtige Stelle. Solange kein anderes Fenster darüber zu liegen kommt, sieht das ganz genauso aus. Nur mit Auflösung umschalten ist nix.

Natürlich auch als Applet

Das gleiche Viewer-Panel lässt sich natürlich ebensogut als Applet verwenden, und – falls signiert – geht’s auch in FullScreen 😉

Dieser Beitrag wurde unter HomeCinema, Java veröffentlicht. Setze ein Lesezeichen auf den Permalink.

Hinterlasse eine Antwort

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *