在自己的軟件中經常需要得知運行本軟件的系統支持的顏色數。例如有的軟件在16Bits的顏色數的計算機上開發而成,程序的顏色調試得非常漂亮,但是到了一台只支持16色的計算機上,程序變得非常難看。這就需要得到系統的顏色數。
Delphi中如何取得系統的顏色數呢?下面的程序就解決這個問題。
function GetSysColorNum:Integer;
Var
ScreenDc:HDC;
NumBitsPixel:Integer;
begin
Result:=0;
ScreenDc:=GetDC(0);
NumBitsPixel:=GetDeviceCaps(ScreenDc,BITPIXEL);
ReleaseDC(ScreenDC);
Result:=1 shl NumBitsPixel;
End;