GetDialogBaseUnits

機能
システムフォントの平均文字サイズを取得
Declare Function GetDialogBaseUnits Lib "user32.dll" () As Long
戻り値
正常終了のとき  下位ワードに幅,上位ワードに高さ
サンプル
ダウンロード(GetDialogBaseUnits.lzh 1.37KB)

'システムフォントの平均文字サイズを取得する
Private Declare Function GetDialogBaseUnits Lib "user32.dll" () As Long

Private Sub Command1_Click() Dim rc As Long Dim High As Integer, Low As Integer '関数の実行 rc = GetDialogBaseUnits '上位ワードと下位ワードを分ける High = GetHighWord(rc) Low = GetLowWord(rc) MsgBox "高さ:" + Str(High) + Chr(9) + "幅:" + Str(Low), , "システムフォントの平均文字サイズ" End Sub
Private Function GetLowWord(ByVal LongValue As Long) As Integer '下位ワードのみを取り出す If (LongValue And &HFFFF&) > &H7FFF Then GetLowWord = (LongValue And &HFFFF&) - &H10000 Else GetLowWord = LongValue And &HFFFF& End If End Function
Private Function GetHighWord(ByVal LongValue As Long) As Integer '上位ワードのみを取り出す GetHighWord = (LongValue And &HFFFF0000) \ &H10000 End Function