コンボボックスのロケール情報を取得 <TOP>
コンボボックスのロケール情報を取得します。リストボックスの場合は、LB_GETLOCALEを使います。
SendMessage ウィンドウにメッセージを送信
言語
言語ID 言語グループ
--------------------------------------------------
英語(既定)
0409 西ヨーロッパと米国
フランス語
040c 西ヨーロッパと米国
スペイン語
0c0a 西ヨーロッパと米国
イタリア語
0410 西ヨーロッパと米国
スウェーデン語 041D
西ヨーロッパと米国
オランダ語
0413 西ヨーロッパと米国
ポルトガル語(ブラジル) 0416 西ヨーロッパと米国
フィンランド語 040b
西ヨーロッパと米国
ノルウェー語 0414
西ヨーロッパと米国
デンマーク語 0406
西ヨーロッパと米国
ハンガリー語 040e
中央ヨーロッパ
ポーランド語 0415
中央ヨーロッパ
ロシア語
0419 キリル言語
チェコ語
0405 中央ヨーロッパ
ギリシャ語
0408 ギリシャ語
ポルトガル語 0816
西ヨーロッパと米国
トルコ語
041f トルコ語
日本語
0411 日本語
韓国語
0412 韓国語
ドイツ語
0407 西ヨーロッパと米国
簡体字中国語 0804
簡体字中国語
繁体字中国語 0404
繁体字中国語
アラビア語
0401 アラビア語
ヘブライ語
040d ヘブライ語
'================================================================ '= コンボボックスのロケール情報を取得 '= (CbGetLocale.bas) '================================================================ #include "Windows.bi" ' ウィンドウにメッセージを送信 Declare Function Api_SendMessage& Lib "user32" Alias "SendMessageA" (ByVal hWnd&, ByVal wMsg&, ByVal wParam&, lParam As Any) #define CB_SHOWDROPDOWN &H14F 'コンボボックスのリストボックスの表示または非表示を切り替える #define CB_GETLOCALE 346 '現在のコンボボックスのロケールを取得する(&H15A) #define LB_GETLOCALE &H1A6 '現在のリストボックスのロケールを取得する Var Shared Combo1 As Object Var Shared Text1 As Object Combo1.Attach GetDlgItem("Combo1") : Combo1.SetFontSize 14 Text1.Attach GetDlgItem("Text1") : Text1.SetFontSize 14 '================================================================ '= '================================================================ Declare Sub MainForm_Start edecl () Sub MainForm_Start() Var i As Integer Var Ret As Long For i = 1 To 12 Combo1.AddString Str$(i) Next i SetMousePointer 0 Ret = Api_SendMessage(Combo1.GethWnd, CB_SHOWDROPDOWN, 1, ByVal 0) End Sub '================================================================ '= '================================================================ Declare Sub Button1_on edecl () Sub Button1_on() Var LocaleInfo As Long 'ロケール情報を取得 LocaleInfo = Api_SendMessage(Combo1.GethWnd, CB_GETLOCALE, 0, ByVal CLng(0)) '取得したロケールIDから言語IDを取り出し表示 Text1.SetWindowtext "言語ID:" & Hex$(LocaleInfo And &H7FFF) End Sub '================================================================ '= '================================================================ While 1 WaitEvent Wend Stop End