Как узнать количество цветов в системной палитре?

Материал из DRKB

Как узнать количество цветов в системной палитре?[править | править код]

function GetNumColors: LongInt;
var
  BPP: Integer;
  DC: HDC;
begin
  DC := CreateDC('DISPLAY', nil, nil, nil);
  if DC <> 0 then
  begin
    try
      BPP := GetDeviceCaps(DC, BITPIXEL) * GetDeviceCaps(DC, PLANES);
    finally
      DeleteDC(DC);
    end;
    case BPP of
      1: Result := 2;
      4: Result := 16;
      8: Result := 256;
      15: Result := 32768;
      16: Result := 65536;
      24: Result := 16777216;
    end;
  end
  else
    Result := 0;
end;


ID: 01457