해상도를 바꾸려면 ChangeDisplaySettings를 쓰시면 됩니다.
그럼 간단한 예제를....
Devmode : TdevMode; //전역변수로 잡고....
procedure TForm1.Button1Click(Sender: TObject);
begin
ChangeDisplaySettings(DevMode, 0);
end;
procedure TForm1.FormCreate(Sender: TObject);
var
OldColor: integer;
DC : HDC;
begin
DC := GetDC ( GetDesktopWindow );
OldColor := GetDeviceCaps ( DC, BITSPIXEL );
ReleaseDC ( GetDesktopWindow, DC );
with DevMode do
begin
dmSize := SizeOf ( TDevMode );
dmPelsWidth := 640;
dmPelsHeight := 480;
dmBitsPerPel := OldColor;
dmFields := DM_PELSWIDTH or DM_PELSHEIGHT;
end;
end;
위와 같이 하시면 640 * 480으로 변환 시킬 수 있습니다.
물론 원상태로 바꾸려면 원래의 초기값을 바꾸기 전에 기억해둬야 겠죠...
그럼 좋은하루 되세요..
|