Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Литература / photon_old.doc
Скачиваний:
40
Добавлен:
02.04.2015
Размер:
7.88 Mб
Скачать
    1. Использование базы данных виджетов

Модули картинок служат двум целям:

  • позволять приложению заменять содержание какого-либо контейнерного виджета;

  • служить в качестве баз данных виджетов.

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

Вот пример базы данных виджетов – это является частью базы данных виджетов, которую PhAB использует в своём собственном интерфейсе:

              1. Рис. 13-2. Пример базы данных виджетов

      1. Создание базы данных

Чтобы создать базу данных виджетов:

  1. Создайте модуль картинки в своём приложении

  2. Создайте внутреннюю связь к модулю картинки

  3. Создайте виджеты, к которым Вам необходимо иметь доступ из Вашего программного кода.

Например, скажем, Вам надо в Вашем приложении много раз создавать некую иконку. Создав иконку внутри модуля картинки, Вы сможете создать при выполнении программы столько копий иконки, сколько Вам понадобится.

          1. Предварительно прикреплённые ответные реакции

Кроме того, что можно предустановить все ресурсы виджета в модуле базы данных, Вы также можете предварительно прикрепить их ответные реакции. Когда Вы создаёте виджет динамически, будут также созданы все прикреплённые Вами ответные реакции.

Предустанавливая ресурсы и ответные реакции для виджета базы данных, Вы легко можете уменьшить объём кода, требуемого для динамического создания виджета, до одной-единственной строки.

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

          1. Назначение уникального имени экземпляра

Присвойте каждому виджету в базе данных виджетов уникальное имя – это позволит Вам ссылаться на виджеты при использовании функций API, относящихся к базам данным.

      1. Создание динамической базы данных

Вы также можете создать базу данных виджетов, которую Вы сможете изменять динамически. Чтобы сделать это, откройте внешнюю базу данных виджетов – т.е. такую, которая не подвязана к Вашему исполняемому файлу – функцией ApOpenDBaseFile() вместо вызова функции ApOpenDBase(). Функция ApOpenDBaseFile() позволяет Вам получить непосредственный доступ к файлу модуля и открыть его как базу данных.

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

Соседние файлы в папке Литература