Miriam: Abfrage nach mehreren Monitoren

Hallo,

kann ich mit Java abfragen, ob der Nutzer einen oder mehrere Monitore benutzt? Wie geht das?

Freundliche Grüße,

Miriam

  1. Moin!

    kann ich mit Java abfragen, ob der Nutzer einen oder mehrere Monitore benutzt? Wie geht das?

    Wahrscheinlich geht das irgendwie. PowerPoint stellt das beim Abspielen einer Präsentation ja auch irgendwie fest, und zeigt sie auf dem zweiten Bildschirm.

    Ich würde allerdings keine derartige Bevormundung des Benutzers einbauen, sondern ihm die Entscheidung allein überlassen. Und sowas kriegt man am schlauesten hin, indem man entweder eine entsprechende Konfigurationsoption in irgendein Menü einbaut ([ ] nutze zweiten Monitor), oder frei verschiebbare Fenster anbietet (dann wird der Benutzer sich die Arbeitsumgebung so einrichten, wie er es gut findet - ob auf dem zweiten Monitor, oder nicht, ist seine Sache.

    - Sven Rautenberg

    --
    Die SelfHTML-Developer sagen Dankeschön für aktuell 21335,05 Euro Spendengelder!
    1. Hallo Sven,

      danke für die Antwort. Ich möchte allerdings nicht testen, wie viele Monitore benutzt werden, um den Nutzer zu bevormunden. Ein Snapshottool soll daraus nur ableiten, wie es die zur Verfügung stehende Bildschirmgröße ermitteln muss.

      Grüße,

      Miriam

    2. Moin Moin !

      PowerPoint stellt das beim Abspielen einer Präsentation ja auch irgendwie fest, und zeigt sie auf dem zweiten Bildschirm.

      Äh - nö!

      Ich hab in meinem Büro-PC eine ATI RADEON 7000 stecken, die sich so ungeschickt in Windows (2000) reinfummelt, das sie trotz zwei Monitoren als ein Adapter mit nur einem Monitor erscheint.

      Symptome: Windows-Taskbar geht über beide Bildschirme (Start ist unten links auf dem linken Monitor, Uhr ist unten rechts auf dem rechten Monitor), Anzeige-Eigenschaften zeigen nur einen Monitor ("(Multiple Monitors) on ATI RADEON 7000 SERIES"), Powerpoint, ACDSee und andere machen im Präsentations-/Fullscreen-Modus links und rechts einen Trauerrand mit dem zu präsentierenden Inhalt genau auf der Grenze zwischen den Monitoren, und so weiter.

      Fazit: Nicht jede Dual-Head-Karte meldet sich auch als zwei Grafikkarten an. Jedes Programm, das Windows' Dual-Head-Betrieb kennt, aber nicht die ATI-Ausnahme, wird *eine* Grafikkarte mit *einem* Monitor erkennen, wenn auch mit 2048x768.

      Alexander

      --
      Nein, ich beantworte keine Fragen per eMail. Dafür ist das Forum da.
      Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
      1. Moin!

        Ich hab in meinem Büro-PC eine ATI RADEON 7000 stecken, die sich so ungeschickt in Windows (2000) reinfummelt, das sie trotz zwei Monitoren als ein Adapter mit nur einem Monitor erscheint.

        Das kann man im Treiber mit Sicherheit einstellen. Ich hatte da mal eine Matrox-Karte unter Windows NT, die diese Einstellmöglichkeit hatte. War zwingend notwendig, weil eine spezielle Software ansonsten nicht auf beiden Bildschirmen gelaufen wäre.

        Symptome: Windows-Taskbar geht über beide Bildschirme (Start ist unten links auf dem linken Monitor, Uhr ist unten rechts auf dem rechten Monitor), Anzeige-Eigenschaften zeigen nur einen Monitor ("(Multiple Monitors) on ATI RADEON 7000 SERIES"), Powerpoint, ACDSee und andere machen im Präsentations-/Fullscreen-Modus links und rechts einen Trauerrand mit dem zu präsentierenden Inhalt genau auf der Grenze zwischen den Monitoren, und so weiter.

        Symptome sind bekannt. Da wird die Auflösung in X-Richtung einfach zusammenaddiert, und der so entstehende Riesendesktop auf zwei Bildschirme verteilt.

        Fazit: Nicht jede Dual-Head-Karte meldet sich auch als zwei Grafikkarten an. Jedes Programm, das Windows' Dual-Head-Betrieb kennt, aber nicht die ATI-Ausnahme, wird *eine* Grafikkarte mit *einem* Monitor erkennen, wenn auch mit 2048x768.

        Ich will mich natürlich nicht festlegen, dass es sich im Treiber abstellen läßt. Unter Windows NT waren die Möglichkeiten mit mehreren Bildschirmen durchaus noch begrenzt, aber spätestens seit Windows 98 - dementsprechend auch bei Windows 2000 - existiert das Problem, dass man _einen_ extrabreiten Desktop auf zwei Monitore verteilen mußte, nicht mehr grundsätzlich.

        Treiber mal genauer erforschen. Ggf. updaten. :)

        - Sven Rautenberg

        --
        Die SelfHTML-Developer sagen Dankeschön für aktuell 21335,05 Euro Spendengelder!
        1. Moin Moin !

          Moin!

          Ich hab in meinem Büro-PC eine ATI RADEON 7000 stecken, die sich so ungeschickt in Windows (2000) reinfummelt, das sie trotz zwei Monitoren als ein Adapter mit nur einem Monitor erscheint.

          Das kann man im Treiber mit Sicherheit einstellen.

          Nicht bei dieser Karte mit diesem Treiber. Meine Edel-ASUS zuhause kann wahlweise als ein oder zwei Adapter erscheinen, aber dieses Stück Silizium kann das nicht.

          Fazit: Nicht jede Dual-Head-Karte meldet sich auch als zwei Grafikkarten an. Jedes Programm, das Windows' Dual-Head-Betrieb kennt, aber nicht die ATI-Ausnahme, wird *eine* Grafikkarte mit *einem* Monitor erkennen, wenn auch mit 2048x768.

          Ich will mich natürlich nicht festlegen, dass es sich im Treiber abstellen läßt. Unter Windows NT waren die Möglichkeiten mit mehreren Bildschirmen durchaus noch begrenzt, aber spätestens seit Windows 98 - dementsprechend auch bei Windows 2000 - existiert das Problem, dass man _einen_ extrabreiten Desktop auf zwei Monitore verteilen mußte, nicht mehr grundsätzlich.

          Genau deswegen gibt es wohl die Symptome: Der Treiber wahr wohl mal für NT zusammengetrickst und wurde nur soweit an 2000 angepaßt wie unbedingt notwendig.

          Treiber mal genauer erforschen. Ggf. updaten. :)

          Alles schon getan, ich quäl mich ja nicht erst seit gestern mit Windows und exotischer Hardware ...

          Mir ist das allerdings mittlerweile auch recht egal, ich kann mit den Symptomen leben. Und jeder, der mich nach Dual-Head fragt, wird von mir "Matrox oder teure ASUS" hören.

          Alexander

          --
          Nein, ich beantworte keine Fragen per eMail. Dafür ist das Forum da.
          Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
  2. Hallo,

    kann ich mit Java abfragen, ob der Nutzer einen oder mehrere Monitore benutzt? Wie geht das?

    Es gibt die Klasse java.awt.GraphicsEnvironment. Hier kriegst du einige
    Informationen zu den vorhandenen Bildschirmen. Die Anzahl der Monitore
    kriegst du, indem du die Anzahl der von der Methode getScreenDevices()
    zurückgelieferten GraphicsDevice-Objekte zählst. Den Standard-Bildschirm,
    also wohl der Bildschirm, in dem die Fenster aufgehen sollten, kriegst
    du über die Methode getDefaultScreenDevice(). (Vorausgesetzt ich habe
    das richtig verstanden.)
    Die Instanz der Klasse GraphicsEnvironment kriegst du über die Methode
    getLocalGraphicsEnvironment().

    Übrigens könntest du wirklich das eine oder andere mal Google bemühen,
    bevor du hier fragst. Was ich hier jetzt aufschrieben habe, habe ich
    in Google gefunden.

    Im Java-Almanac (http://javaalmanac.com/), der sehr zu empfehlen ist,
    findest du auch etwas dazu.

    Gruß
    Slyh