名前 題名 ▼ Mr.XRAYさん > > GetLocaleInfo と SetLocaleInfo で出来るんですね. > > 結果の文字列をシステムから取得するには,EnumXXX という列挙用の関数を使用します. > この場合,列挙と言っても 1 つだけですが. > > > var > StrKind : String; > > //----------------------------------------------------------------------------- > // EnumCalendarInfo関数のコールバック関数 > // EnumCalendarInfo関数を実行すると自動的に呼び出されて実行される関数 > // このような関数をコールバック関数という > // 目的の情報の取得が終了するまで何回も呼び出される > // 取得するべき情報がなくなるか,Result := 0 にするとEnumCalendarInfo関数の > // 次のコードに実行が移る > //---------------------------------------------------------------------------- > function EnumCalendarInfoProc(lpLocaleString: PChar): Integer; > begin > StrKind := lpLocaleString; > Result := 1; > end; > > //============================================================================= > // カレンダーの種類を取得 > //============================================================================= > procedure TForm1.Button1Click(Sender: TObject); > var > StrText : string; > Size : Integer; > CAL_ID : Cardinal; > begin > StrKind := ''; > Size := GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_ICALENDARTYPE, nil, 0); > SetLength(StrText, Size); > > GetLocaleInfo(LOCALE_USER_DEFAULT, LOCALE_ICALENDARTYPE, PChar(StrText), Size); > CAL_ID := StrToInt(StrText); > > EnumCalendarInfo(@EnumCalendarInfoProc, LOCALE_USER_DEFAULT, CAL_ID, CAL_SCALNAME); > MessageBox(Handle, PChar(StrKind), 'カレンダの種類', 0); > end; > > [参考] -- 関数類の MSDN の記事へのリンクあり > [02-01_EnumSystemLocales 関数を使用した入力ロケール一覧] > http://mrxray.on.coocan.jp/Delphi/plSamples/S04_SystemParametersInfo_Interface.htm#02-01 > GIF,JPEG,PNG画像ファイル及びLZH,ZIPファイルをアップロードできます.600 x 1200 ピクセルを超える画像は縮小表示されます(画像クリックで拡大表示). (上限122000(120k)バイト) 削除キー Link