
- •Лекция №25 Разработка графического интерфейса.
- •1. Режимы работы редактора.
- •2. Использование клавиатуры.
- •3. Типы графических элементов.
- •4. Атрибуты графических элементов.
- •Кнопка выбора стиля линии при настройке атрибутов элемента рисования Линия обозначена на рис. 11.
- •Необходимо помнить, что создание и редактирование ресурсных библиотек возможно только в среде Windows nt.
- •Маска. Этот атрибут используется при работе с дискретными каналами и служит для выделения битов, с которыми будет работать форма отображения. Вид маски приведён на рис. 23.
Необходимо помнить, что создание и редактирование ресурсных библиотек возможно только в среде Windows nt.
Источники внешних ресурсов должны располагаться в директории проекта, а ресурсные библиотеки в директории INI инструментальной системы или проекта. В поставку ТРЕЙС МОУД входят две системные ресурсные библиотеки: R_icon.dll и ResWP.dll.
Первая из них содержит набор стандартных иконок размером 32х32. Вторая библиотека содержит набор обоев для экранов. Эти обои оформлены в виде растровых изображений размером 128х128.
Окно Атрибуты для графических элементов, использующих внешние ресурсы, содержит два списка. Первый из них предназначен для выбора источника ресурсов - директория проекта и библиотеки, а второй – для выбора ресурса из указанного источника. Чтобы добавить в эти списки новые элементы - библиотеки или элементы из библиотек, предусмотрены кнопки перехода в диалоги выбора ресурсов. Настройка элемента рисования Растровый фрагмент демонстрируется на рис. 20.
Рис. 20. Настройка элемента рисования Растровый фрагмент
Для подключения ресурсных библиотек или элементов из выбранного источника надо нажать ЛК на кнопке со знаком ?, расположенной правее соответствующего списка. При этом на экран выводится диалог доступа к ресурсам. Вид диалога приведен на рис. 21.
Рис. 21. Диалоговое окно Источники ресурсов
В окне Доступные диалога (см. рис. 21) в зависимости от формируемого списка выводится список библиотек или отдельных ресурсов, а в окне Используемые – список подключенных ресурсов. Для подключения нового ресурса надо выделить его в окне Доступные и нажатием ЛК на кнопке [<] перенести его в окно Используемые.
Всплывающая подсказка. Для всех графических элементов, кроме статического текста, в окне Атрибуты присутствует поле ввода подсказки. Она появляется в режиме эмуляции при наведении курсора мыши на графический элемент (см. рис. 22). В МРВ подсказки включаются после его запуска.
Рис. 22. Поле Ввода подсказки
Выводом подсказок можно управлять с помощью команды Подсказки меню Вид или сочетанием клавиш Ctrl + Shift + T.
Маска. Этот атрибут используется при работе с дискретными каналами и служит для выделения битов, с которыми будет работать форма отображения. Вид маски приведён на рис. 23.
Рис. 23. Вид маски окна Атрибуты
Маска используется для предварительной обработки значения канала. Результат обработки используется формой отображения или функциями управления.
Значение маски можно ввести с клавиатуры - в шестнадцатеричном виде для каналов с видом представления Н и в десятичном – для каналов с видом представления F или задать с помощью кнопок. Если кнопка нажата, соответствующий бит равен 1, если отжата – 0. По умолчанию все биты маски равны 1, при этом отображаются все биты канала. Поле из 4-х бит выделено на рис. 23.
В процессе предварительной обработки значение канала сначала логически умножается на значение маски, а затем сдвигается вправо на N бит, при этом слева число дополняется нулевыми битами. Если младший бит маски равен 1, N = 0 - нет сдвига. В противном случае N равно количеству идущих подряд нулевых битов маски, считая с младшего, как показано на рис. 24.
Рис. 24. Вид маски: слева при N = 0 и справа при N = 3
Пример. Пусть две ФО Динамический текст отображают одно и то же значение 0хffff канала с видом представления Н. Установим для первой ФО маску 0хffff - все биты равны 1, для второй – 0хdffc (см. рис. 25).
Рис. 25. Вид маски 0хdffc
Первая ФО отобразит значение 0хffff - результат логического умножения 0хffff на 0хffff равен 0хffff, сдвига нет, так как младший бит маски равен 1. Вторая ФО отобразит значение 0х37ff - результат логического умножения 0хffff на 0хdffc равен 0хdffc, далее все биты сдвигаются вправо на 2 разряда, число дополняется слева двумя нулевыми битами.