Swing und mehrere Bildschirme

cojack20

Mitglied
Hallo,

ich möchte eine Application schreiben, die folgendes umsetzt:

An eine Grafikkarte sind 2 Monitore angeschlossen. Auf dem einen Monitor soll ein Fenster in Fullscreen Mode laufen, auf dem anderen ein Eingabefenster (z.b. Text). Jetzt möchte, dass wenn ich auf der Eingabeseite etwas ändere, soll es auf der anderen angezeigt werden.
Wie weise ich dem einen Fenster Monitor 1 zu und dem anderen Monitor 2.

Und das möchte das ganze in Swing umsetzten...


DANKE
 
Hi.

ja das ist ja wie in SWT mit den Display.getDefault(). Leider ist mein Problem, dass ich nicht weiß wie ich einem Fenster zuweise mit welchem GraphicsDevice er "interagieren" soll...

Kannst du mir bitte weiterhelfen
 
Moin!
GraphicsEnviroment liefert dir alle möglichen GraphicsDevices, sprich die möglichen Monitore.
Und dazu gibst auch ein Beispiel in der Doku:
Code:
GraphicsEnvironment ge = GraphicsEnvironment.
   getLocalGraphicsEnvironment();
   GraphicsDevice[] gs = ge.getScreenDevices();
   for (int j = 0; j < gs.length; j++) { 
      GraphicsDevice gd = gs[j];
      GraphicsConfiguration[] gc =
        gd.getConfigurations();
      for (int i=0; i < gc.length; i++) {
         JFrame f = new
         JFrame(gs[j].getDefaultConfiguration());
         Canvas c = new Canvas(gc[i]); 
         Rectangle gcBounds = gc[i].getBounds();
         int xoffs = gcBounds.x;
         int yoffs = gcBounds.y;
           f.getContentPane().add(c);
           f.setLocation((i*50)+xoffs, (i*60)+yoffs);
         f.show();
      }
   }

Hättest eigentlich nur selbst ein bisserl was lesen müssen..

*grüssle*
MeinerEiner
 
Moin!
GraphicsEnviroment liefert dir alle möglichen GraphicsDevices, sprich die möglichen Monitore.
Und dazu gibst auch ein Beispiel in der Doku:
Code:
GraphicsEnvironment ge = GraphicsEnvironment.
   getLocalGraphicsEnvironment();
   GraphicsDevice[] gs = ge.getScreenDevices();
   for (int j = 0; j < gs.length; j++) { 
      GraphicsDevice gd = gs[j];
      GraphicsConfiguration[] gc =
        gd.getConfigurations();
      for (int i=0; i < gc.length; i++) {
         JFrame f = new
         JFrame(gs[j].getDefaultConfiguration());
         Canvas c = new Canvas(gc[i]); 
         Rectangle gcBounds = gc[i].getBounds();
         int xoffs = gcBounds.x;
         int yoffs = gcBounds.y;
           f.getContentPane().add(c);
           f.setLocation((i*50)+xoffs, (i*60)+yoffs);
         f.show();
      }
   }

Hättest eigentlich nur selbst ein bisserl was lesen müssen..

*grüssle*
MeinerEiner
Oh man. Auf
Code:
 GraphicsDevice gd = gs[j];
      GraphicsConfiguration[] gc =
        gd.getConfigurations();


wäre ich nicht gekommen. Da fehlt mir wohl der Überblick über Swing... DANKE.
 
Zurück