Tipp 5.5 - Anzahl Farben ermitteln

Wie kann ich die Anzahl der Farben ermitteln?

Mit dieser Funktion können Sie die Anzahl der Farben ermitteln. Kopieren Sie einfach nachfolgenden Quellcode in die Zwischenablage und fügen Sie anschließend den Inhalt der Zwischenablage in ein neues Modul ein. Die Aufrufparameter finden Sie im Quellcode beschrieben.

Api-AufrufeVerwendete Win32-Api-Aufrufe und Typen: GetDesktopWindow, GetDC, GetDeviceCaps

Beispiel:

Option Explicit
 
Public Declare Function GetDesktopWindow _
    Lib "user32" () As Long
Public Declare Function GetDC _
    Lib "user32" _
    (ByVal hwnd As Long) As Long
Public Declare Function GetDeviceCaps _
    Lib "gdi32" _
    (ByVal hdc As Long, _
    ByVal nIndex As Long) As Long
 
Public Function Colors() As Double
  '// -----------------------------------------------------
  '// Methode:   | Ermittelt die Anzahl Farben
  '// -----------------------------------------------------
  '// Parameter: | -
  '// -----------------------------------------------------
  '// Rückgabe:  | Anzahl Farben (Double wg. TrueColor
  '//            | 2^32 Farben)
  '// -----------------------------------------------------
  '// Autor:     | Stefan Kulpa
  '//            | EDV Innovation & Consulting - Dormagen
  '// -----------------------------------------------------
  Const BITSPIXEL As Long = 12
  Dim lHDC        As Long
  lHDC = GetDC(GetDesktopWindow())
  If lHDC <> 0 Then Colors = 2 ^ GetDeviceCaps(lHDC, _
      BITSPIXEL)
 
End Function