it-swarm.com.de

Wie steuern Sie, auf welchem ​​Monitor Ihre Anwendung geöffnet wird?

Als Benutzer mit zwei Monitoren bei der Arbeit habe ich festgestellt, dass sich Anwendungen in Bezug auf den Monitor, auf dem sie geöffnet werden, unterschiedlich verhalten (primärer oder sekundärer Monitor, letzter Monitor, auf dem die Anwendung geöffnet wurde usw.). Um ehrlich zu sein, ärgern mich einige Anwendungen, weil ich möchte, dass sie auf meinem Hauptmonitor geöffnet werden. Wenn ich sie dort haben möchte, schiebe ich sie auf meine Sekundärseite. Diese Anwendungen befinden sich jedoch außerhalb meiner Kontrolle, daher möchte ich nach meinen eigenen Anwendungen fragen, die möglicherweise von Personen ausgeführt werden, die zwei Monitore verwenden.

Welche Arten von Steuerelementen stehen zur Verfügung, damit Personen festlegen können, auf welchem ​​Monitor Ihre Anwendung geöffnet wird, sich eine Anwendung an den Monitor "erinnern" lässt, an dem er sich beim Schließen befand, und sich dort wieder öffnet, und die Anwendung auf einem bestimmten Monitor gestartet werden muss ?

Ich suche nach Lösungen für alle Betriebssysteme und Programmiersprachen, obwohl ich vermute, dass unterschiedliche Betriebssysteme und Sprachen unterschiedliche Steuerelemente haben werden.

Verwandte Fragen

  • Was bestimmt den Monitor, auf dem meine App läuft? Diese Frage behandelt vorhandene Anwendungen und wie sie entscheiden, auf welchem ​​Monitor sie ausgeführt werden sollen. Die aktuell akzeptierte Antwort enthält Windows-Funktionen, mit denen die Positionierung einer App beim Start gesteuert werden kann.
  • Programm auf dem zweiten Monitor starten? bietet einige Delphi-Lösungen, mit denen eine Anwendung auf einem bestimmten Monitor gestartet werden muss.
22
Thomas Owens

Als Windows-Programmierer steuere ich den Startmonitor von Fenstern, die von meinen Apps erstellt wurden, mit A. Speichern der letzten Position meiner Apps in der Registrierung und Wiederherstellen dieser und b. Fehlen gespeicherte Informationen, setzen Sie die Startposition auf magische Flag-Werte, mit denen Windows die App mit ihrer Standardlogik positioniert. Die Standardlogik ändert sich von Betriebssystem zu Betriebssystem, da MS die Benutzererfahrung verbessert, aber sie sorgt dafür, dass die App auf dem Monitor geöffnet wird, auf den der Benutzer am wahrscheinlichsten schaut.

Als Benutzer mit einem Multi-Monitor-Windows XP/Vista-System würde ich den nVidia Desktop Manager verwenden, der Startpositionen für Anwendungen festlegen kann.

9
Chris Becke

Zu beachten ist, dass sich die Monitorkonfiguration möglicherweise zwischen den Aufrufen der Anwendung geändert hat (z. B. Ausführen auf einem Laptop, der manchmal angedockt ist und einen externen Monitor verwendet). Stellen Sie sicher, dass sich Ihre Anwendung im sichtbaren Bereich befindet.

Bei den APIs gibt es die System.Windows.Forms.Screen-Klasse, die Ihnen einige dieser Informationen liefert.

2
Philipp Schmid

Aus der Perspektive des traditionellen Unix- und Linux-Window-Managers haben Sie keine Kontrolle. Der Fenstermanager übernimmt die Positionierung des Fensters.

Möglicherweise können Sie dem Fenstermanager Hinweise geben, es sollte jedoch möglich sein, den Fenstermanager so zu konfigurieren, dass solche Dinge ignoriert werden. Das Verschieben oder Platzieren des Fensters aus dem Programm kann bei Verwendung eines großen virtuellen Desktops leicht Schmerzen verursachen.

Siehe: http://standards.freedesktop.org/wm-spec/wm-spec-latest.html

2
iny

In KDE 4.13.3 (möglicherweise in einigen älteren und neueren Personen können Sie dies tun (Übersetzung kann inakurieren - ich verwende eine polnische Version):

  1. führen Sie das gewünschte Programm aus
  2. klicken Sie mit der rechten Maustaste auf die Titelleiste
  3. wählen Sie "Weitere Aktionen" -> "Zusätzliche Fenstereinstellungen ..." (weitere Optionen finden Sie unter "Zusätzliche Programmeinstellungen ...").
  4. gehe zum Tab "Größe & Layout"
  5. Markieren Sie das Kontrollkästchen "Bildschirm" und wählen Sie "Erzwingen" und wählen Sie die Bildschirmnummer. Das Fenster dieses Programms wird immer auf diesem Bildschirm geöffnet.
0
keypress