再問Pedro:改變屏幕刷新率問題 |
答題得分者是:pedro
|
zhczm
一般會員 發表:66 回覆:15 積分:16 註冊:2003-06-23 發送簡訊給我 |
procedure Tform1.Button1Click(Sender: TObject);
var m:devmode;
begin
if EnumDisplaySettings(nil, 2, m) then
begin
m.dmPelsWidth := 1024;
m.dmPelsHeight := 768; m.dmBitsPerPel:=24;//色深?????
m.dmDisplayFrequency:=100; //刷新率?????? m.dmFields := DM_PELSWIDTH Or DM_PELSHEIGHT;
ChangeDisplaySettings(m, 0);
end;
end; 以上像素(色深)和刷新率卻不能改變,請問如何,我手調屏幕可支持200的刷新率和32位像素 發表人 - zhczm 於 2003/10/23 15:42:03
|
pedro
尊榮會員 發表:152 回覆:1187 積分:892 註冊:2002-06-12 發送簡訊給我 |
|
zhczm
一般會員 發表:66 回覆:15 積分:16 註冊:2003-06-23 發送簡訊給我 |
procedure Tf_auto.Button2Click(Sender: TObject);
var m:devmode;
begin
if EnumDisplaySettings(nil, 0, m) then
begin
m.dmPelsWidth := 800;
m.dmPelsHeight := 640;
m.dmBitsPerPel:=24;
m.dmDisplayFrequency:=75;
m.dmFields :=DM_PELSWIDTH Or DM_PELSHEIGHT or DM_BITSPERPEL or DM_DisplayFrequency;
ChangeDisplaySettings(m, 0);
end;
end;
procedure Tf_auto.Button1Click(Sender: TObject);
var m:devmode;
begin
if EnumDisplaySettings(nil, 2, m) then
begin
m.dmPelsWidth := 1024;
m.dmPelsHeight := 768;
m.dmBitsPerPel:=24;
m.dmDisplayFrequency:=75;
m.dmFields :=DM_PELSWIDTH Or DM_PELSHEIGHT or DM_BITSPERPEL or DM_DisplayFrequency;
ChangeDisplaySettings(m, 0);
end;
end;
以上我做兩個Button 卻不能按要求交替轉換屏幕模式, 爲何?
|
pedro
尊榮會員 發表:152 回覆:1187 積分:892 註冊:2002-06-12 發送簡訊給我 |
maybe your video card not support 24bit
another mistake first button dmPelsHeight=640 follow is correct code
procedure TForm1.Button1Click(Sender: TObject); var m:devmode; begin if EnumDisplaySettings(nil, 0, m) then begin m.dmPelsWidth := 800; m.dmPelsHeight := 600; //or example: 4 bits for 16 colors, //8 bits for 256 colors, or 16 bits //for 65536 colors m.dmBitsPerPel:=32; m.dmDisplayFrequency:=85; m.dmFields :=DM_PELSWIDTH Or DM_PELSHEIGHT or DM_BITSPERPEL or DM_DisplayFrequency; ChangeDisplaySettings(m, 0); end; end; procedure TForm1.Button2Click(Sender: TObject); var m:devmode; begin if EnumDisplaySettings(nil, 0, m) then begin m.dmPelsWidth := 1024; m.dmPelsHeight := 768; m.dmBitsPerPel:=32; m.dmDisplayFrequency:=85; m.dmFields :=DM_PELSWIDTH Or DM_PELSHEIGHT or DM_BITSPERPEL or DM_DisplayFrequency; ChangeDisplaySettings(m, 0); end; end; |
本站聲明 |
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。 2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。 3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇! |