Использование базовых классов при создании форм
Свойства объектов, созданных на основе базовых классов
Объект, созданный на основе базовых классов, наследует его свойства, методы и обрабатываемые события. Свойства подобны переменным, однако в отличие от последних, они не существуют вне объекта.
Возможность изменения свойств объектов в Visual FoxPro является мощным инструментом управления данными в интерактивном режиме. Например, вы можете:
- изменить свойства формы (заголовок, размер, цвет, расположение и т. п.);
- изменить цвета полей ввода, тип их отображения, цвет и формат выводимой в них информации;
- запретить ввод информации в поля, переход на них или же сделать их невидимыми и многое другое.
Для того чтобы определить какое-либо из свойств объекта в интерактивном режиме, вам необходимо выделить требуемый объект, после чего выполнить одно из следующих действий:
- в меню View (Вид) выбрать команду Properties (Свойства);
- нажать правую кнопку мыши и из контекстного меню объекта выбрать команду Properties (Свойства).
В результате на экране появляется окно свойств текущего объекта (рис. 19.2). Свойства объектов могут принимать символьные, логические и числовые значения. Некоторые из них могут принимать произвольные значения (например, заголовок поля, его координаты). Другие свойства могут принимать значения из определенного списка.
Рис. 19.2. Окно свойств объекта
При программировании вы можете определить свойство объекта, указав имя объекта и имя свойства, которые разделяются точками. Для изменения свойства достаточно присвоить ему допустимое значение. Например:
* присваиваем заголовку формы значение переменной cName frmNew. Caption = cName
Язык Visual FoxPro позволяет вам устанавливать не только свойства отдельных объектов, но и определенной группы объектов.
Для этого используется конструкция WITH… ENDWITH, которая имеет следующий синтаксис:
WITH имяОбгьекта [,имяОбгьекта] [.имяСвойства = выражение] ENDWITH
Например, вы можете установить одинаковый цвет для группы объектов:
WITH cmdNext, cmdPrev .ForeColor=RGB(0.0.0) .BackColor=RGB(255.255.255) ENDWITH