
14.11.2008, 01:05
|
|
Banned
Регистрация: 06.01.2008
Сообщений: 413
Провел на форуме: 1301036
Репутация:
1334
|
|
Попробуй сделать так.
Код:
{$IFDEF WIN32}
{$R STRTBL32.RES}
{$ELSE}
{$R STRTBL16.RES}
const
LANG_ENGLISH = $09;
const
LANG_SPANISH = $0A;
const
LANG_SWEDISH = $1D;
{$ENDIF}
function GetLanguage: word;
{$IFDEF WIN32}
{$ELSE}
var
s: string;
i: integer;
{$ENDIF}
begin
{$IFDEF WIN32}
GetLanguage := GetUserDefaultLangID and $3FF;
{$ELSE}
s[0] := Char(GetProfileString('intl',
'sLanguage',
'none',
@s[1],
sizeof(s) - 2));
for i := 1 to length(s) do
s[i] := UpCase(s[i]);
if s = 'ENU' then
GetLanguage := LANG_ENGLISH
else if s = 'ESN' then
GetLanguage := LANG_SPANISH
else if s = 'SVE' then
GetLanguage := LANG_SWEDISH
else
GetLanguage := LANG_ENGLISH;
{$ENDIF}
end;
procedure TForm1.FormCreate(Sender: TObject);
var
a: array[0..255] of char;
StrTblOfs: integer;
begin
{Получаем текущий язык системы и начало соответствующих строк в таблице}
case GetLanguage of
LANG_ENGLISH: StrTblOfs := 0;
LANG_SPANISH: StrTblOfs := 16;
LANG_SWEDISH: StrTblOfs := 32;
else
StrTblOfs := 0;
end;
{Загружаем и устанавливаем заголовок кнопки "Yes" в соответствии с языком}
if LoadString(hInstance,
StrTblOfs + 1,
@a,
sizeof(a)) <> 0 then
Button1.Caption := StrPas(a);
{Загружаем и устанавливаем заголовок кнопки "No" в соответствии с языком}
if LoadString(hInstance,
StrTblOfs + 2,
@a,
sizeof(a)) <> 0 then
Button2.Caption := StrPas(a);
end;
|
|
|