Entwickler-Ecke

Multimedia / Grafik - Bildwiederholfrequenz beim Monitor


Robert M. - Sa 06.07.02 08:33
Titel: Bildwiederholfrequenz beim Monitor
Hallo
weiß jemand, wie man die Bildwiederholfrequenz unter Win98 die ändern kann? ( Beim Monitor 60 Hz 70 Hz...)


OregonGhost - Sa 06.07.02 12:45


Quelltext
1:
2:
3:
4:
LONG ChangeDisplaySettings(
  LPDEVMODE lpDevMode,  // graphics mode
  DWORD dwflags         // graphics mode options
);

Für dwFlags solltest du vielleicht CDS_UPDATEREGISTRY (schreibt die Daten auch in die Registry) oder 0 (ändert nur die Anzeige) angeben, statt einem Zeiger auf eine DEVMODE-struct übergibst du in Delphi einfach einen TDevMode. Das ganze könnte ungefähr so aussehen:

Quelltext
1:
2:
3:
4:
5:
6:
7:
var dm: TDevMode;
...
dm.dmSize := sizeof(TDevMode);
dm.dmDriverExtra := 0;
dm.dmDisplayFrequency := DEINE_FREQUENZ_IN_HERTZ;
dm.dmFields := DM_DISPLAYFREQUENCY;
ChangeDisplaySettings(dm, CDS_UPDATEREGISTRY);

(ungetestet)

Das wäre der "schmutzige" Weg. Korrekterweise solltest du mit EnumDisplaySettings() alle verfügbaren Modi aufzählen und dir einen passenden daraus aussuchen, aber so weißte schon mal wie's geht ;c)


Robert M. - Sa 06.07.02 13:02

Danke. :D