在自己的軟件中經常需要得知運行本軟件的系統支持的顏色數。例如有的軟件在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;