![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Сообщения на русском языке
nitro © (2002-06-07 11:42:00)Народ, как сделать, чтобы все сообщения типа MessageDlg были на русском языке? Имеется ввиду, чтобы надписи на кнопках были по русски?
Еще интересует, можно ли изменить заголовок окна ошибки? Если да, то как...
Заранее благодарен.
Romkin (2002-06-07 12:22:00) [1]Второй выход - resource DLL, там все можно перевести
Игорь Шевченко (2002-06-07 12:00:00) [2]Romkin © (07.06.02 11:52)
Не годится при использовании пакетов
MAxiMum © (07.06.02 11:59)
Не трожь генофонд!
MAxiMum (2002-06-07 11:59:00) [3]Изменить в файле
($Delphi)\Source\VCL\Consts.pasстроки, начинающиеся сSMsgDlg.
Romkin (2002-06-07 11:52:00) [4]Сложно, проще взять исходники вида ..const...pas
в отдельный каталог и перевести. После прописывания Library path к этому каталогу делаешь build и все по-русски
В частности, consts.pas SMsgDlg... - сообщения MessageDlg, S..Button - Надписи на кнопках
Игорь Шевченко (2002-06-07 11:45:00) [5]Windows.MessageBox показывает надписи на языке Windows (на русских Windows - русские)
Или, к примеру, так:
const
SMsgDlgYes = "Да";
SMsgDlgNo = "Нет";
SMsgDlgCancel = "Отмена";
function hs_MessageDlgPos(const Msg: string; DlgType: TMsgDlgType;
Buttons: TMsgDlgButtons; HelpCtx: Longint): Integer;
begin
with CreateMessageDialog(Msg, DlgType, Buttons) do
try
Caption := Application.Title; { Здесь можно заголовок поменять }
HelpContext := HelpCtx;
Position := poMainFormCenter;
if mbYes in Buttons then
(FindComponent("Yes") as TButton).Caption:=SMsgDlgYes;
if mbNo in Buttons then
(FindComponent("No") as TButton).Caption:=SMsgDlgNo;
if mbCancel in Buttons then
(FindComponent("Cancel") as TButton).Caption:=SMsgDlgCancel;
Result := ShowModal;
finally
Free;
end;
end;
В FAQ пора добавлять, а то регулярно такой вопрос возникает.