![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Про MessageDlg [D6]
sterran © (2003-01-15 16:00:00)Мастера, у меня к Вам такой вопрос. Как процедуру MessageDlg заставить выводить вместо аглицких кнопок Yes No Cancelрусские Да Нет Отмена.
Юрий Зотов (2003-01-16 10:59:00) [1]> GrayWolf (16.01.03 09:23)
Application.MessageBox отличается от системной MessageBox только тем, что не требует хэндла окна. На этом вся ее простота и заканчивается - поскольку это одно и то же (см. код VCL). В обычной MessageBox тоже никто не запрещает указывать ноль вместо хэндла (что специально оговорено в справке).
Игорь Шевченко (2003-01-16 09:51:00) [2]Приветствую, Юрий Зотов © (16.01.03 07:09)
> причем вариант Ex позволяет назначить язык диалога прямо
> при вызове функции.
Это, к сожалению, сказки. В последних версиях MSDN дано опровержение старому неверному описанию функции MessageBoxEx.
С уважением,
GrayWolf (2003-01-16 09:23:00) [3]А еще проще, по-моему, будет выводить диалог при помощи объекта Application: Application.MessageBox()
И кнопки на языке системы и все остальное...
Дмитрий К.К. (2003-01-16 08:17:00) [4]http://polesoft.narod.ru/
Дмитрий К.К. (2003-01-16 08:13:00) [5]Polaris
OlDemon (2003-01-16 07:11:00) [6]Поискай в кладовке там есть файлик который все пофиксит. Спасибо его создателю.
Юрий Зотов (2003-01-16 07:09:00) [7]> cult © (15.01.03 16:07)
MessageDlg - это дельфишный, а не стандартный диалог OC. Поэтому он работает по Consts.pas, а не на языке локализации системы.
Стандартные диалоги ОС - это MessageBox(Ex), причем вариант Ex позволяет назначить язык диалога прямо при вызове функции.
mumu (2003-01-16 06:50:00) [8]2sterran © (15.01.03 16:00)
Для этого надо отредактировать файл Consts.pas или QConsts.pas для Vcl или Clx соответственно (находятся в %Delphi%\Source\Vcl\ и %Delphi%\Source\Clx\), откомпилировать их (debug и обычная версия) и поместить в каталог %Delphi%\Lib и %Delphi%\Lib\Debug.
Переводить надо строки, начинающиеся с SMsgDlg*.
Delirium^.Tremens (2003-01-15 16:10:00) [9]MessageBox() и будут кнопки в соответствии с локализацией системы
mike-d (2003-01-15 16:08:00) [10]Возьми на www.delphiplus.orgrun-time руссификацию для твоей версии Delphi - и будет тебе счастье...
cult (2003-01-15 16:07:00) [11][mbДа],[mbНет],[mbОтмена]
шучу.
Пусть меня поправят мастера, если я не прав, но стандартный диалог, по-моему, на то и стандартный, чтобы кнопки делать по стандартам операционной системы. Так что если у тебя винды английские, будет писать на английском, а если китайские - на китайском. Кажется, можно какие-то Custom-диалоги делать, но тут я пас.