Файлы ресурсов
Конец описания
Процедура RisOkno
Конец описания
Процедура RisRamki
Процедура RisOkno
Механизм встраивания характерен для системы Visual Basic и предусматривает возможность создания объекта-потомка с дополнением новых полей и методов, но не перекрытия старых методов. В этом смысле первое описание объекта Окно1 соответствует системе Visual Basic, а второе в ней реализовать невозможно.
Конец описания.
Процедура RisOkno
Рис. 1.5. Структура описания объекта
Очень ценными свойствами объекта являются механизмы наследования, встраивания и полиморфизма. Механизм наследования характерен для систем на основе языков Pascal и C. Он предполагает возможность создания новых объектов (потомков или наследников), которые наследуют поля и методы объектов-предков, при этом возможны как вставка новых полей и методов, так и перекрытие (создание новых версий) одноименных методов.
Например, можно создать потомок рассмотренного выше окна, в который можно добавить поле ramka, описывающее рамку и заполнение фона окна какими-либо символами. Тогда придется или создать новый метод RisRamki, дополняющий метод RisOkno и работающий с новым полем (рис. 1.6, а) или написать новую версию процедуры RisOkno, которая заменит метод предка (рис. 1.6,б).
Окно1 = объект(Окно)
x,y : <указание типа данных>
l,h : <указание типа данных>
simvol, fon : <указание типа данных>
ramka : <указание типа данных>
а)
Окно1 = объект(Окно)
x,y : <указание типа данных>
l,h : <указание типа данных>
simvol, fon : <указание типа данных>
ramka : <указание типа данных>
б)
Рис. 1.6. Схемы описания объекта для механизмов
встраивания (а) и наследования (б)
Полиморфизм объектов заключается в использовании несколькими объектами одного и того же интерфейса доступа к данным. В Visual Basic идея полиморфизма реализуется через классы объектов – заготовки множества реальных объектов. Для всех объектов, входящих в класс, принят стандартный интерфейс доступа к данным.
В любом случае наличие блочных структур и объектов позволяет строить программу из готовых элементов, являющихся стандартными процедурами, функциями или объектами, причем эти элементы по желанию можно использовать в существующем или измененном виде. А это в свою очередь делает программы еще более обозримыми, легче понимаемыми и облегчает их отладку.
Одной из сравнительно новых идей является вынесение описаний элементов интерфейса пользователя в отдельные файлы, называемые файлами ресурсов. Например, одной из записей такого файла может быть описание объекта Окно (или Окно1). В эту запись войдут номер объекта в некотором регистрационном списке объектов и конкретные значения полей объекта. При необходимости по номеру объекта (или по его имени) можно найти нужную запись и прочитать из нее параметры окна для использования их методами объекта. Наиболее часто файлы ресурсов используются для построения мультиязычных программ – программ со сменным или переключаемым языком пользователя.
1.4.7. Событийное управление программными
средствами
Внедрение объектно-ориентированного программирования позволило отделить друг от друга процессы описания данных, их преобразования и процессы отображения на экране элементов пользовательского интерфейса. Это позволило перейти к событийному управлению программными средствами.
Событием называется любое изменение состояния программы, требующее ее реакции. К ним относятся: нажатие клавиши, движение мыши, щелчок мыши, возникновение ситуации деления на ноль и т.д.
Для каждого объекта создаются два специальных метода – определитель события и обработчик события. Это обычные процедуры. Первая из них регистрирует событие, определяет, относится оно к объекту или нет, опознает событие (т.е. предусмотрено оно или нет). Вторая процедура обрабатывает событие, т.е. обеспечивает реакцию программы на предусмотренное событие.