VBA Tipp: Kleine oder große Schriftarten

Aus DBWiki
Wechseln zu: Navigation, Suche

Problem

Ich möchte wissen, ob in der Systemsteuerung "kleine Schriftarten" oder "große Schriftarten" gewählt wurden.

Lösung

Das geht mittels der API-Funktion "GetDeviceCaps":

Private Declare Function GetDC Lib "user32" _
  (ByVal hwnd As Long) As Long
Private Declare Function GetDeviceCaps Lib "GDI32" _
  (ByVal hDC As Long, ByVal nIndex As Long) As Long
Private Const LOGPIXELSX = 88 ' Logical pixels/inch in X
 
Public Function Schriftgrad()
Dim hDC As Long
  hDC = GetDC(Application.hWndAccessApp)
  Schriftgrad = GetDeviceCaps(hDC, LOGPIXELSX)
End Function

Aufruf

Die Funktion kann man dann z.B. so verwenden:

Debug.Print Schriftgrad()
 96
' entspricht "kleine Schriftarten" in der Systemsteuerung

Siehe auch

  • API-Referenz zu "GetDeviceCaps".