Anwendung auf anderem Bildschirm darstellen?

Für allgemeine Fragen zur Programmierung, welche nicht! direkt mit Lazarus zu tun haben.
Antworten
Patrix2911
Beiträge: 32
Registriert: So 30. Jul 2017, 13:53

Anwendung auf anderem Bildschirm darstellen?

Beitrag von Patrix2911 »

Hey,

mit ein wenig Googeln hab ich rausgefunden das man über die TScreen Klasse die Anzahl der Monitor rausfinden kann. Wie ich allerdings die Anwendung dazu bringe auf einem anderen Monitor angezeigt zu werden, konnte ich nicht so leicht rausfinden. Hat jemand ne Idee dazu?

Danke im vorraus. :)

martin_frb
Beiträge: 572
Registriert: Mi 25. Mär 2009, 21:12
OS, Lazarus, FPC: Laz trunk / fpc latest release / Win and other
CPU-Target: mostly 32 bit

Re: Anwendung auf anderem Bildschirm darstellen?

Beitrag von martin_frb »

Jeder Screen hat top,left,right,bottom.
Und jeder Screen hat andere Koordinaten. Mit 2 Screens zb: (Top,Left)
-1680, 0 // 0,0 (ja negative)
oder
0,0 // 1680,0
oder
0,0 // 1200,0 (uebereinander)


Platziere dein window (Form.top/left) einfach innerhalb dieser Koordinaten

Timm Thaler
Beiträge: 1224
Registriert: So 20. Mär 2016, 22:14
OS, Lazarus, FPC: Win7-64bit Laz1.9.0 FPC3.1.1 für Win, RPi, AVR embedded
CPU-Target: Raspberry Pi 3

Re: Anwendung auf anderem Bildschirm darstellen?

Beitrag von Timm Thaler »

Aber bitte dabei aufpassen, ob das die absoluten oder die freien Screenmaße sind. Je nach Lage der Taskleiste kann die nutzbare Fläche kleiner sein.

Ich hab hier einige Programme, deren Titelleiste sich ständig unter die Taskleiste schiebt, weil sich anscheinend niemand vorstellen kann, dass man in Windows seine Taskleiste oben hat. Besonders lustig sind Programme, die beim Start die absoluten Koordinaten nehmen, bei Schließen aber die relativen Koordinaten speichern. Die wandern mit jedem Start um die Höhe der Titelleiste weiter hoch.

Mathias
Beiträge: 6163
Registriert: Do 2. Jan 2014, 17:21
OS, Lazarus, FPC: Linux (die neusten Trunk)
CPU-Target: 64Bit
Wohnort: Schweiz

Re: Anwendung auf anderem Bildschirm darstellen?

Beitrag von Mathias »

Besonders gefährlich ist auch, wen man Koordinaten ausserhalb des Bildschirmes deklariert, dann ist nicht mal das Form sichtbar.

Ich würde immer gucken, dass du mit Form.Position := po??? ein vom System definierten Wert verwendet wird.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot

Patrix2911
Beiträge: 32
Registriert: So 30. Jul 2017, 13:53

Re: Anwendung auf anderem Bildschirm darstellen?

Beitrag von Patrix2911 »

Okay ich danke euch für die Antworten :) Im übrigen ... an die Taskleiste oben am Bildschirm hätte ich tatsächlich auch nie gedacht ... toller Tipp!

Antworten