Как изменить диалоговое окно?

Ответ мастера:

Существует возможность внесения изменений или локализации интерфейса без перекомпилирования программ. Для этого возможно изменять диалоговые окна при помощи редактора ресурсов. Шаблоны самих диалоговых окон приложений для операционных систем семейства Windows обычно хранятся в секциях ресурсов PE модулей (либо самих исполняемых модулей, либо динамических библиотек).

Необходимо: утилита Resource Hacker, котоаря доступна для бесплатной загрузки по адресу rpi.net.au/~ajohnson/resourcehacker.

Откройте файл модуля PE, в котором находятся диалоги, подлежащие изменению. Нажмите одновременно клавиши Ctrl и O или выберите пункты меню File и "Open...» программы Resource Hacker. Откроется диалоговое окно с названием "Open file containing resource ...", служащее для выбора нужного файла. Перейдите к директории с модулем, выделите в списке нужный файл и нажмите кнопку «Открыть».

Откройте ресурс нужного вам диалогового окна. Разверните в левой панели приложения группу «Dialog». Разворачивайте один за одним вложенные узлы этой секции, выделяя содержащиеся в них элементы. Во время этого процесса на правой панели отобразится декомпилированное содержимое ресурса в виде текста скрипта, а вдругом, плавающем окне визуализируется сам диалог. Внесите в диалог необходимые изменения при помощи редактирования его стилей, атрибутов, а также геометрических параметров. Затем перетащите фокус ввода в плавающее окно с диалогом. Щёлкните по нему правой кнопкой мыши для вызова контекстного меню и выберите команду «Edit Dialog» или воспользуйтесь сочетанием клавиш Ctrl+E. В новом окне «Dialog Editor» внесите все необходимые изменения в диалог. Например, измените заголовок диалога, его размеры, координаты по умолчанию, шрифт, набор стилей и расширенных стилей (при установке флажка ExStyle) окна. Подтвердите сохранение внесённых изменений, нажав на кнопку «OK».

Внесите в диалог необходимые изменения при помощи добавления новых элементов управления. Для этого одновременно нажмите клавиши Ctrl и I или щёлкните по диалогу правой кнопкой мыши и выберите пункт «Insert Control». Во вновь открывшемся окне Control Editor укажите тип элемента управления, который хотите добавить. Для этого выделите элемент из списка Pre-defined controls или нажмите на одну из кнопок, располагающихся ниже. Если нужно, то в текстовое поле Caption введите текст окна элемента управления. Установите координаты и размеры создаваемого элемента, используя поля Left, Top, Width, Height. Их можно скорректировать в визуальном режиме и позже. Введите его числовой идентификатор в поле ID. Задайте стили диалога. Подтвердите сохранение всех внесённых изменений, нажав на кнопку «OK».

Внесите в диалог необходимые изменения при помощи редактирования свойств уже существующих в нем элементов управления. Для этого щёлкните правой кнопкой мыши по какому-нибудь элементу управления диалога. В появившемся контекстном меню выберите пункт «Edit control». Произведите те же действия по изменению свойств, что были описаны в предыдущем абзаце.

Убедитесь в правильности всех внесённых вами изменений. Просмотрите диалог целиком в плавающем окне, чтобы удостовериться: диалог изменён именно таким образом, который вас устраивает.

Объедините измененный скрипт ресурса диалогового окна. Нажмите на кнопку «Compile Script» в главном окне приложения Resource Hacker.

Сохраните по желанию PE модуль или же его копию. Откройте меню, выберите пункт File. Затем кликните по пункту Save или "Save as ...". Если это необходимо, то укажите новое имя файла и нажмите на кнопку «Сохранить».

Теперь проверьте результат выполненных действий. Запускайте PE модуль, если он является исполняемым файлом приложения. Произведите те действия, которые отобразят совершённых изменений в диалогах. Убедитесь том, что ни одно внесённое изменение не повлияло на работу программы.

Имейте в виду, что если лицензия на использование приложений или библиотек не допускает изменений в их диалоговых окнах, то делать этого нельзя.

  • На выходных и в праздничные дни
  • Гарантии
    на работы
    и комплектующие
  • Высокая квалификация специалистов
  • Конкуретные низкие цены
  • Моментальная помощь
  • Обучение и консультации

Вопросы и ответы

  • выявление
    и устранение
    неисправности
    компьютеров и сетей
  • установка
    и настройка
    программного обеспечения,
    и антивирусной защиты
  • абонентское
    обслуживание
    компьютеров и сетей
    и многое другое
  • абонентское
    обслуживание
    компьютеров и сетей
    и многое другое