Autor |
Beitrag |
Cain
Beiträge: 32
Win 2000, Win ME, Win XP
Delphi 5
|
Verfasst: Mo 17.10.05 11:19
Und zwar habe ich folgendes Problem.
Ich habe zwei Grafikkarten und möchte unter Delphi drei Monitore ansteuern, wo auch jeweils was anderes drauf sein soll.
Eine GraKa hat nur den normalen VGA Ausgang. Die Andere DVI und VGA.
Nun meine Frage. Das mit TMOnitor und TScreen habe ich noch nicht so recht verstanden.
Wie steuere ich die einzelnen Bildschirme ein...
Nen kleines Stück einfacher Quelltext würde mir als Lösung schon reichen.
Danke schon mal für eure Hilfe.
|
|
digi_c
Beiträge: 1905
W98, XP
D7 PE, Lazarus, WinAVR
|
Verfasst: Mo 17.10.05 13:17
Was verstehst du denn unter "ansteuern" ?
Mehr als deine Anwendungsfenster zu verteilen wird mit diesen Objekten nicht drin sein, die ganzen Details kannst du evtl. per WinAPI regeln(aber bestimmt nicht so einfach) und das komplette umschalten gestaltet sich IMHO sehr schwer.
|
|
Cain
Beiträge: 32
Win 2000, Win ME, Win XP
Delphi 5
|
Verfasst: Mo 17.10.05 13:19
Ich will dem Programm sagen, dass zum Beispiel Fenster 1 auf Monitor 1 angeziegt wird.
Fenster 2 in Monitor 2 etc...
Das muss mit TMonitor und TScreen wohl möglich sein.
|
|
retnyg
Beiträge: 2754
SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
|
Verfasst: Mo 17.10.05 13:52
Cain hat folgendes geschrieben: |
Nen kleines Stück einfacher Quelltext würde mir als Lösung schon reichen.
|
RETMONITORTOOLS
OMORPHIA MONITOR
_________________ es gibt leute, die sind genetisch nicht zum programmieren geschaffen.
in der regel haben diese leute die regel...
|
|
Cain
Beiträge: 32
Win 2000, Win ME, Win XP
Delphi 5
|
Verfasst: Mo 17.10.05 14:07
Danke retnyg aber wie in besagten Abschnitten schon erwähnt wird davon abgeraten die retmonitortools zu benutzen und die andere Unit hat mit meinem Problem
nichts zu tun.
Trotzdem danke.
|
|
retnyg
Beiträge: 2754
SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
|
Verfasst: Mo 17.10.05 14:09
du siehst aber trotzdem in dem code wie man es machen kann. ausserdem bietet die omorphia monitor unit (ich habe mal einen blick reingeworfen) nahezu die selben funktionen. ob sie auch tut, hab ich aber noch nicht getestet.
_________________ es gibt leute, die sind genetisch nicht zum programmieren geschaffen.
in der regel haben diese leute die regel...
|
|
Cain
Beiträge: 32
Win 2000, Win ME, Win XP
Delphi 5
|
Verfasst: Mo 17.10.05 14:17
Naja...
Das geht alles über verschieben aber das geht auch direkt.
Aber die Frage ist "wie"
|
|
hallo
Beiträge: 450
WIN XP, SuSE 9.3
D3 Prof, D6 Pers, 2005 Pers
|
Verfasst: Mo 17.10.05 14:27
Du musst dein Fenster ja nur aus dem 1. rausschieben, um in den 2. zu kommen!
Du kannst mal sowas wie Screen.width bzw. screen.height versuchen, und dann ausrechnen welcher Monitor wieviel hat.
Wie hast du es denn eigenstellt?
_____
|1|2|3|
-------
Oder üebereinander? Oder verstehe ich da was falsch?
_________________ Der beste je Programmierte Trojaner: Windows XP
Wäre es nicht adequat, den Usus heterogener Termini zu minimieren?
|
|
Cain
Beiträge: 32
Win 2000, Win ME, Win XP
Delphi 5
|
Verfasst: Mo 17.10.05 14:39
Ich will nichts verschieben.
Über TScreen bzw. TMonitor kann man rausfinden welcher der primäre Monitor ist und wieviele Monitore da sind also müßte man auch mit den selben Komponenten setzten können auf welchem Monitor was angezeigt wird.
So a la:
Monitor[1].ShowMessage("1");
Monitor[2].ShowMessage("2");
etc...
|
|
hallo
Beiträge: 450
WIN XP, SuSE 9.3
D3 Prof, D6 Pers, 2005 Pers
|
Verfasst: Mo 17.10.05 14:56
Hast du da irgendsoein gestrecktes Bild?
Das beim 1. raus durch den 2. durch und beim 3. reingeht, oder verstehe ich da was nicht recht?
_________________ Der beste je Programmierte Trojaner: Windows XP
Wäre es nicht adequat, den Usus heterogener Termini zu minimieren?
|
|
Cain
Beiträge: 32
Win 2000, Win ME, Win XP
Delphi 5
|
Verfasst: Mo 17.10.05 15:09
Nichts gestreckt.
auf jedem Bildschirm soll was anderes stehen....
Unter XP wäre das über die Eigeschaften der darstellung leicht zu machen aber unter älteren OS leider nicht
|
|
Cain
Beiträge: 32
Win 2000, Win ME, Win XP
Delphi 5
|
Verfasst: Mi 19.10.05 11:28
|
|
wdbee
Beiträge: 628
Erhaltene Danke: 1
|
Verfasst: Mi 19.10.05 14:22
Hallo Cain,
um dir helfen zu können, müssen wir zunächst mal wissen, ob du die drei Monitore unter Windows konfiguriert hast.
Beispiel: Bei meinem Notebook habe ich die Möglichkeit einen externen Monitor anzuschließen. Damit dort etwas angezeigt wird, muss ich in der Systemsteureung auswählen, wie der externe Monitor von Windows bedient werden soll.
[1][1] 1. Möglichkeit: Kopie des internen Displays
[1][2] 2. Möglichkeit: Logisch nebeneinander liegende Abschnitte des Desktops
[2] 3. Möglichkeit: Logisch untereinandner liegende Abschnitte des Desktops
[1]
Bei Möglichkeit 2 läuft die Taskleiste unten auf beiden Monitoren durch, bei Möglichkeit 3 ist sie nur auf dem 1. Monitor zu sehen.
Wenn das mal erledigt ist, dann kannst du dein Formular über LEFT und TOP positionieren.
Bei Möglichkeit 2 sind die X-Koordinaten des ersten Monitors z.B. [0 bis 1023], die des zweiten [1024 bis 2047]. Bei XP kann der zweite Monitor auch eine andere logische Größe haben als der erste. Bei mir z.B. 1: 1400 x 1050 und 2: 1024 x 768.
Dmit sind die X-Koordinaten des externen Displays z.B. 0 bis 1400-1 und 0+1400 bis 1024+1400-1.
Die gültigen Werte hängen dabei nur davon ab, was du in der Systemsteurung [Anzeige] eingestellt hast. TMonitor und TScreen bauen dann darauf auf. Erst muss das mal so gehen.
|
|
Cain
Beiträge: 32
Win 2000, Win ME, Win XP
Delphi 5
|
Verfasst: Mo 24.10.05 08:30
Ohne das Postionieren muss das auch gehen.
Wenn man nämlich die Auflösung ändert, verschieben sich die Sachen alle.
Außer man man ne Abfrage für jede mögliche Auflösung...
|
|
Grishnak
Beiträge: 221
Windows XP Home
Delphi 7 PE, Delphi 2005 PE
|
Verfasst: Mo 24.10.05 12:22
wdbee hat folgendes geschrieben: | [1][1] 1. Möglichkeit: Kopie des internen Displays
[1][2] 2. Möglichkeit: Logisch nebeneinander liegende Abschnitte des Desktops
[2] 3. Möglichkeit: Logisch untereinandner liegende Abschnitte des Desktops
[1]
Bei Möglichkeit 2 läuft die Taskleiste unten auf beiden Monitoren durch, bei Möglichkeit 3 ist sie nur auf dem 1. Monitor zu sehen.
|
Ich habe mom. an meine 9700pro zwei Monitore angeschlossen (15" & 17" TFT). Aber egal welche Auflösung ich bei beiden Monitoren einstelle (1024x768 + 1280x1024 oder beide auf 1024x768) bzw. wie ich sie anordne (gem. "Eigenschaften von Anzeige/Einstellungen", ich bekomme die Taskleiste nur auf dem primären Monitor! Wie bekomme ich eine durchgängige Task-Leiste?
_________________ Mach' etwas idiotensicher und irgendjemand erfindet einen besseren Idioten!
|
|
retnyg
Beiträge: 2754
SNES, GB, GBA, CPC, A500, 486/66, P4/3.0HT: NintendOS, AmigaOS, DoS
Delphi 5, Delphi 7
|
Verfasst: Mo 24.10.05 17:46
Grishnak hat folgendes geschrieben: | Wie bekomme ich eine durchgängige Task-Leiste? |
mit ner matrox-karte
_________________ es gibt leute, die sind genetisch nicht zum programmieren geschaffen.
in der regel haben diese leute die regel...
|
|
Muetze1
Beiträge: 346
|
Verfasst: Mo 24.10.05 20:01
Oder du nutzt UltraMon - ich habs mir gekauft und kann es für MultiMon System nur empfehlen.
_________________ 49 63 68 68 61 62 65 6B 65 69 6E 65 41 68 6E 75 6E 67 21
|
|
Cain
Beiträge: 32
Win 2000, Win ME, Win XP
Delphi 5
|
Verfasst: Di 25.10.05 10:36
Hat denn keiner ne Unit, die auf mehreren Monitoren was ausgibt?
Bin schon echt am verzweifeln.
|
|
digi_c
Beiträge: 1905
W98, XP
D7 PE, Lazarus, WinAVR
|
Verfasst: Di 25.10.05 11:05
Gefunden per MULTIMONITOR DELPHI:
Zitat: | Dad's Components : TColoredLabel, TWizard, T...., Multi Monitor API,... |
delphi.icm.edu.pl/ftp/d30free/dadcomp.zip
Zwar von 99 aber sicherlich ein Ansatz. Oder etwa eins von 2002:
delphi.icm.edu.pl/ftp/d50free/DW10242.ZIP
|
|
Cain
Beiträge: 32
Win 2000, Win ME, Win XP
Delphi 5
|
Verfasst: Di 25.10.05 11:58
Die beiden ZIP Archive enthalten nichts, was auch nur annähernd was mit Monitoren zu tun hat.
Trotzdem danke.
|
|