Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ПОУК / 09 семестр / Книги и методические указания / Руководство программиста в Photon.doc
Источник:
Скачиваний:
364
Добавлен:
04.03.2014
Размер:
7.99 Mб
Скачать

Хотите узнать больше?

Чтобы узнать больше:

См. раздел:

В главе:

Ответные реакции виджета

Имена экземпляров

Модули меню

Ответные реакции

Имена экземпляров

Модули меню

Редактирование ресурсов и ответных реакций в PhAB

Создание виджетов в PhAB

Работа с модулями

Урок 4. Создание диалогов

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

 Этот урок использует приложение, созданное Вами на уроке 3.

На это уроке Вы:

  1. присоедините пункт "About Demo" в меню "Help" к диалогу

  2. добавите надписи и кнопку "Done" к новому диалогу

  3. определите установочную функцию, которая изменит текст одной из надписей для отображения номера версии, когда диалог будет вызван.

О диалогах

Модули диалогов спроектированы для того, чтобы позволить Вам получить дополнительную информацию о пользователе. Обычно Вы используете такую информацию, чтобы выполнить конкретную команду или задачу.

Поскольку Вам обычно нет нужды получать одну и ту же информацию дважды, диалоги являются модулями, существующими в одном экземпляре. Иными словами, Вы не можете открыть один и тот же диалог более одного раза одновременно. Если Вы попытаетесь создать второй экземпляр диалога, PhAB просто переведёт существующий диалог поверх остальных окон и передаст ему фокус.

Если Вам необходимо создать окно, поддерживающее несколько экземпляров, используйте модуль окна. Вы изучите модули окна на следующем уроке.

Ещё об именах экземпляров

Чтобы облегчить доступ к виджетам из кода Вашего приложения, PhAB генерирует глобальную переменную и декларацию. Обе они базируются на имени экземпляра виджета.

Глобально переменная, начинающаяся с префикса ABN_, представляет собой имя виджета. Декларация, начинающаяся с префикса ABW_, представляет указатель на экземпляр виджета.

Например, пусть Вы имеете виджет, имя которого about_version. PhAB использует это имя для генерации глобальной переменной с именем ABN_about_version и декларации с именем ABW_about_version.

На этом уроке мы научимся, как использовать эти сгенерированные имена.

 Значение переменной виджета ABN_..., является уникальным для всего приложения.

Прикрепление модуля диалога

  1. Откройте приложение tut3, созданное Вами, и используйте пункт "Save As" в меню "File", чтобы сохранить его как tut4.

  2. Откройте созданный Вами модуль меню "Help" (он может быть ещё свёрнутым в иконку).

  3. Щёлкните на ресурсе "Menu Items" в панели управления ресурсами, чтобы открыть редактор меню.

  4. Выберите пункт "About Demo", затем щёлкните на иконке, следующей за областью "Callback", чтобы открыть редактор ответных реакций:

  1. Когда редактор откроется, принимаемым по умолчанию типом ответной реакции будет "Code". Перейдите к группе "Module Types" и измените тип ответной реакции на "Dialog".

  2. В области "Name" наберите как имя модуля диалога, с которым Вы хотите установить связь, aboutdlg. (Этот диалог ещё не существует, но позже PhAB спросит Вас, создавать ли его).

  3. В области "Setup Function" наберите about_setup. Это имя, которое мы присваиваем функции установки, которая будет вызвана перед запуском диалога.

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

  1. Поскольку Вы хотите, чтобы функция aboutdlg_setup вызывалась перед открытием диалога, убедитесь, что включена кнопка "Pre-Realize".

  2. Щёлкните на иконке "Location", чтобы задать, где должен появляться диалог при его запуске. (Хорошим выбором будет расположение "Center Screen"). Щёлкните на "Done". Информация об ответной реакции будет теперь выглядеть так:

  1. Щёлкните на "Apply", чтобы добавить связь ответной реакции. Поскольку модуль диалога, к которому Вы хотите прикрепить связь, ещё не существует, Phab предложит Вам выбрать стиль; выберите "Plain" и щёлкните "Continue". Вы увидите в рабочей области новый диалог. Вы также увидите новую ответную реакцию в списке ответных реакций в редакторе ответных реакций.

  2. Щёлкните на "Done", чтобы закрыть редактор ответных реакций, затем щёлкните на "Done" ещё раз, чтобы закрыть редактор меню.