Seite 1 von 1
Primärer Monitor
Verfasst: Samstag 5. April 2008, 11:32
von lordmyder
Hallo,
ich habe an meinem Computer mehrere Monitore angeschlossen.
Ich möchte jetzt bei beiden Monitoren die Auflösung ändern.
Mit den Code-Snippes die ich hier im Forum gefunden habe, lässt sich immer nur die des Primären Monitors ändern, kann mir jemand sagen, wie ich die anderen anspreche? Ist das überhaupt möglich?
Danke im Voraus
LordMyder
Verfasst: Samstag 5. April 2008, 11:36
von BlackJack
Welches Betriebssystem denn?
Verfasst: Samstag 5. April 2008, 18:07
von lordmyder
sry, hab ich vergessen:
Windows XP Media Center Edition
Verfasst: Sonntag 6. April 2008, 10:48
von HWK
Verfasst: Sonntag 6. April 2008, 12:05
von lordmyder
Danke schonmal!
Code: Alles auswählen
global status,dem
display_modes = {}
n = 0
while True:
try:
devmode = win32api.EnumDisplaySettings (None, 0)
except pywintypes.error:
break
else:
key = (
devmode.BitsPerPel,
devmode.PelsWidth,
devmode.PelsHeight,
devmode.DisplayFrequency
)
display_modes[key] = devmode
n += 1
mode_required = (32, 1024, 768, 70)
devmode = display_modes[mode_required]
win32api.ChangeDisplaySettings (devmode, 0)
Ich habe diesen Code hier im Forum gefunden, und laut der Anleitung, die du mir geschickt hast müsste der doch alle Monitore skalieren, oder verstehe ich da was falsch?
Kann mir jemand sagen, warum er das bei mir nicht macht?
Verfasst: Sonntag 6. April 2008, 12:24
von HWK
Wozu verwendest Du das n?
EnumDisplaySettings(None, 0) liest immer Setting 0 des Standardbildschirms aus. Du musst Dir also erst die DeviveNames mit EnumDisplayDevices für das erste Argument holen und statt 0 als zweiten Parameter Dein n verwenden. Außerdem ist ChangeDisplaySettingsEx notwendig.
MfG
HWK
Verfasst: Sonntag 6. April 2008, 12:32
von lordmyder
sorry, dass ich mich so dämlich anstelle.
Aber wenn ich folgendes eingebe:
dev=win32api.EnumDisplayDevices(None,1)
Dann gibt er mir ein Objekt und keinen Namen zurück.
Was mache ich denn falsch?
Verfasst: Sonntag 6. April 2008, 12:56
von HWK