フォントの文字セット識別子を取得 <TOP>
GetTextCharset 指定されたデバイスコンテキストの現在のフォントの文字セット識別子を取得
GetDC デバイスコンテキストのハンドルを取得
ReleaseDC デバイスコンテキストの解放
'================================================================ '= フォントの文字セット識別子を取得
'= (GetTextCharset.bas) '================================================================ #include "Windows.bi" ' 指定されたデバイスコンテキストの現在のフォントの文字セット識別子を取得 Declare Function Api_GetTextCharset& Lib "gdi32" Alias "GetTextCharset" (ByVal hDC&) ' 指定されたウィンドウのクライアント領域または画面全体を表すディスプレイデバイスコンテキストのハンドルを取得 Declare Function Api_GetDC& Lib "user32" Alias "GetDC" (ByVal hWnd&) ' デバイスコンテキストを解放 Declare Function Api_ReleaseDC& Lib "user32" Alias "ReleaseDC" (ByVal hWnd&, ByVal hDC&) #define ANSI_CHARSET 0 'Windows標準文字セット #define DEFAULT_CHARSET 1 'デフォルト(指定なし) #define SYMBOL_CHARSET 2 'シンボル文字セット #define MAC_CHARSET 77 ' #define SHIFTJIS_CHARSET 128 'シフトJIS文字セット #define HANGEUL_CHARSET 129 'ハングル文字セット #define JOHAB_CHARSET 130 '韓国版Windows文字セット #define GB2312_CHARSET 134 ' #define CHINESEBIG5_CHARSET 136 '中国語文字セット #define GREEK_CHARSET 161 ' #define TURKISH_CHARSET 162 ' #define VIETNAMESE_CHARSET 163 ' #define HEBREW_CHARSET 177 '中東語版Windows(ヘブライ語)文字セット #define ARABIC_CHARSET 178 '中東語版Windows(アラビア語)文字セット #define BALTIC_CHARSET 186 ' #define RUSSIAN_CHARSET 204 ' #define THAI_CHARSET 222 'タイ版Windows文字セット #define EASTEUROPE_CHARSET 238 ' #define OEM_CHARSET 255 'OEM文字セット Var Shared Text1 As Object Var Shared Button1 As Object Text1.Attach GetDlgItem("Text1") : Text1.SetFontSize 14 Button1.Attach GetDlgItem("Button1") : Button1.SetFontSize 14 '================================================================ '= '================================================================ Declare Sub Button1_on edecl () Sub Button1_on() Var hDC As Long Var hChr As String Var Ret As Long hDC = Api_GetDC(GethWnd) Ret = Api_GetTextCharset(hDC) Select Case Ret Case 0 hChr = "ANSI_CHARSET" Case 1 hChr = "DEFAULT_CHARSET" Case 2 hChr = "SYMBOL_CHARSET" Case 128 hChr = "SHIFTJIS_CHARSET" Case 129 hChr = "HANGEUL_CHARSET" Case 134 hChr = "GB2312_CHARSET" Case 136 hChr = "CHINESEBIG5_CHARSET" Case 255 hChr = "OEM_CHARSET" End Select Text1.SetWindowtext hChr Ret = Api_ReleaseDC(GethWnd, hDC) End Sub '================================================================ '= '================================================================ While 1 WaitEvent Wend Stop End