如何获取屏幕颜色数?EnumDisplaySettings不灵(100分)

  • 主题发起人 主题发起人 hguhgu
  • 开始时间 开始时间
H

hguhgu

Unregistered / Unconfirmed
GUEST, unregistred user!
用EnumDisplaySetting得出的dmBitsperpel不论屏幕设成16位色还是32位色均为8
 
function EnumDisplaySettings(lpszDeviceName: LPCWSTR; iModeNum: DWORD;
var lpDevMode: DEVMODEW): BOOL; stdcall; forward;
function EnumDisplaySettings; external 'user32.dll' name 'EnumDisplaySettingsW';


procedure TForm1.Button1Click(Sender: TObject);
var
lpszDeviceName: LPCWSTR;
iModeNum: DWORD;
lpDevMode: DEVMODEW;
begin
EnumDisplaySettings(nil,$FFFFFFFF,lpDevMode);
caption := inttostr(lpDevMode.dmBitsPerPel);
end;
 
ok,谢谢!
 
抱歉,本段代码在windows98下失效!
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
592
import
I
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
后退
顶部