Финальная версия "Delphi: Полный китайский" (опубликована в 37-м номере "Домашнего компьютера", простите меня за новый флакон!)
Сиань Лян Мин
-------------------------------------------------- ----------------------------------
Перед написанием этой статьи у меня возникла такая грязная мысль: нельзя «сливать» этот трюк другим! Однако совесть мне сразу подсказала, что у меня не должно быть такой мысли! Вот и записала. как дополнение к последней статье "Delphi: Полный китаец", и это можно расценивать как награду за собственную совесть!
Теперь перейдем к сути: как вы все знаете, когда мы имеем дело с собственными сообщениями Delphi (я имею в виду все сообщения самой Delphi, включая системные диалоговые окна Delphi, запросы об исключениях и т. д.), общий подход, который мы применяем, заключается в том, чтобы «опередить Delphi» или заблокировать функцию системы и использовать наш собственный способ борьбы с ней, чтобы предоставить пользователям чистый китайский язык Назначение среды. Однако все это можно предсказать только субъективно, исходя из имеющегося опыта программиста! Из-за сложности системы и наших собственных ограничений уровня, результатом этого неизбежно будут одни и другие проблемы. может возникнуть в любой момент не может быть решена. Она не обрабатывается тщательно или даже не обрабатывается вообще. Представьте себе: если во время использования пользователем появятся какие-то английские подсказки, сильно ли снизится «оценка» вашей программы?
Поэтому надо тоже искать более идеальный и основательный метод. По крайней мере, при появлении ошибок в программе обычные пользователи смогут понять подсказки (это не значит, что можно делать всё, что угодно). К счастью, после повторения автора). испытаний, это было Найдите другую надежную стратегию. Пожалуйста, послушайте, как я объясню это ниже (только если ваша версия Delphi имеет исходный код VCL, то есть профессиональная или корпоративная версия):
0. Создайте резервную копию исходного кода Delphi VCL (обычно это каталог «X:PROgram FilesBorlandDelphi4SourceVcl»). Конечно, при необходимости вы также можете создать резервную копию только нескольких файлов, которые нам нужно изменить;
1. Откройте файлы BdeConst.pas, Consts.pas, BdeConst.pas, DbConsts.pas, Midconst.pas, mxConsts.pas, OleConst.pas, WebConst.pas и другие файлы модулей в каталоге VCL в среде Delphi. Эти модули. файлы определены
Определяет константы, используемые Delphi;
2. «Перевести» строковые константы, определенные Delphi, на наш великий родной язык – китайский;
3. После завершения работы по «переводу» сохраните его под исходным именем файла;
4. Теперь давайте попробуем наши результаты, создадим новый проект, намеренно напишем некоторый код, который будет вызывать системные подсказки, и перед компиляцией перейдем к опции «Путь поиска» на странице «Каталоги/Условия» диалогового окна «Параметры проекта Delphi» и добавим поиск. Путь (то есть каталог, в котором мы только что изменили константную единицу), подтверждаем и выходим;
5. Просто следите за своим уровнем английского перевода!
Уведомление:
① Если ваша версия — Delphi 3, измените указанный выше путь соответствующим образом, а «Каталоги/Условия» в диалоговом окне «Параметры проекта» — «Каталоги»;
② Это изменение условий компиляции действительно только для этого проекта. Его необходимо сбросить после создания нового проекта. Если вы хотите исправить это раз и навсегда, следуйте за мной:
Запустите программу редактирования реестра Windows Regedit.exe, откройте HKEY_CURRENT_USER->Software->Borland->Delphi->4.0->Library и добавьте «$(DELPHI)SourceVCL».Ok к одному из строковых значений для «Путь поиска», цель достигнута!
Ниже показано сообщение, отправленное функцией после того, как автор изменил константы функции MessageDlg в файле модуля Consts.pas. На этот раз мы видим уже не наполовину английское, наполовину янское окно сообщения. , достаточно красиво?
...
Начинать
MessageDlg('Как вы себя чувствуете?'+#13#10#13#10+
'Здесь я перевожу "SMsgDlgInformation" как "сообщение";'+#13#10+
'Результат перевода "SOKButton" как "ОК"!",
mtInformation,[mbok],0);
Конец;
...
****Вставьте сюда рисунок 4****
Не кажется ли приведенное выше действие слишком честным?! На самом деле, мы можем настроить эти константы в соответствии с нашими собственными пожеланиями (при условии, что Inprise согласна) для достижения особого эффекта. Например, мы можем перевести «SMsgDlgInformation» в название вашего программного обеспечения или. собственное название студии и т. д. Таким образом, ваша неординарная индивидуальность будет полностью раскрыта!
Это весь опыт и навыки, которые автор планирует передать в Delphi «Полный китайский» (весь этот набор я размещу на своей личной домашней странице после того, как объясню две имеющиеся у меня программы, тогда, пожалуйста, зайдите туда) Конечно, звоню). он "полностью китайский" заставляет меня краснеть, но я очень надеюсь, что Inprise положит конец эпохе, когда мы "завидуем" VB-программистам!
Есть еще некоторые проблемы, например: среда Delphi на английском языке, подсказки и кнопки предварительного просмотра отчета также на английском языке и т. д. Что касается первого вопроса, то я лично считаю, что он не нужен, потому что ни один программист даже не разберется в меню. Если вы не поняли, то цель наших усилий — пользователи, есть и решение второй проблемы, эту тему здесь не стоит раскрывать, но я видел, как многие задавали этот вопрос в Интернете, поэтому изложу кратко. обсудим это здесь. Позвольте мне закончить эту тему:
①Разработайте содержимое QuickRep по мере необходимости;
②Имитируйте режим предварительного просмотра QuickRep или настройте QRPreview самостоятельно;
③Назначьте QRPrinter QuickRep QRPrinter QRPreview в событии OnPreview QuickRep.
(Например, QRPreview1.QRPrinter:=Quickrep1.QRPrinter;) QRPreview может заменить QuickRep.
режим предварительного просмотра.
Модератор: Лян Мин
Дата: 1 марта 1999 г.
Электронная почта: [email protected]