Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Про 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-диалоги делать, но тут я пас.


Наверх

Титульная страница Поиск, карта сайта Написать письмо