Добавляет объекту новое свойство.
Object.AddProperty(cPropertyName [, eNewValue [, nVisibility [, cDescription]]]) |
Параметры
- cPropertyName
-
Указывает имя нового свойства, добавляемого объекту.
- eNewValue
-
Указывает значение, в которое будет установлено новое свойство. Если eNewValue опущено, значение свойства остается неизменным, если одноименное свойство уже существует о объекта, или устанавливается в False (.F.) для случая, если новое свойство успешно добавлено в объект.
- nVisibility
-
Указывает область видимости нового свойство. Доступно для использования в design-time, однко, значение 1 может быть указано в runtime.
nVisibility Область видимости 1
Public
2
Protected
3
Hidden
- cDescription
-
Указывает описание нового свойства. Доступно только в design-time.
Описание свойства ограничено 255 символами.
Возвращаемое значение
Логический тип данных
Примечания
Применяется к: CheckBox Control | Collection Class | Column Object | ComboBox Control | CommandButton Control | CommandGroup Control | Container Object | Control Object | Cursor Object | CursorAdapter Class | Custom | DataEnvironment Object | EditBox Control | Exception Class | Form Object | FormSet Object | Grid Control | Header Object | Image Control | Label Control | Line Control | ListBox Control | OLE Bound Control | OLE Container Control | OptionButton Control | OptionGroup Control | Page Object | PageFrame Control | ProjectHook Object | Relation Object | ReportListener Object | _SCREEN | Separator Object | Session Object | Shape Control | Spinner Control | TextBox Control | Timer Control | ToolBar Object
Метод AddProperty( ) позволяет вас вводить в объект новые свойства в run time. Новое свойство в этом случае добавляется с областью видимости PUBLIC.
Вы можете, кроме того, создать для объекта свойство-массив. Каждый элемент в свойстве-массиве инициализируется в значение, указанное в eNewValue если оно включено; в противном случае, каждый элемент массива будет содержать False (.F.). Приведенный ниже пример демонстрирует способ создания для объекта свойства-массива:
![]() | |
---|---|
oMyForm = CREATEOBJECT('Form') oMyForm.AddProperty('MyArray(2)', 1) && Добавляет массив как свойство oMyForm.MyArray(2) = 'Two' CLEAR ? oMyForm.MyArray(1) && Отображает 1 ? oMyForm.MyArray(2) && Отображает Two |
Если свойство с указанным вами именем еще не существует, то оно будет создано и метод вернет True (.T.).
Если свойство с одноименным именем уже существует, тогда метод AddProperty( ) возвратит приведенное ниже:
-
True (.T.) если новое свойство является свойством-массивом и уже существующее свойство тоже является массивом. Размер массива изменяется в указанный при вызове метода. Если вы для eNewValue указали какое-то значение, то все элементы массива будут установлены в это значение. Если же вы опустили в вызове eNewValue, то все элементы массива будут установлены в False (.F.).
-
True (.T.) если вновь вводимое свойство не является массивом а уже существующее представляет собой массив. В этом случае, свойство останется массивом Если вы для eNewValue указали какое-то значение, то все элементы массива будут установлены в это значение. Если же вы опустили в вызове eNewValue, то все элементы массива останутся неизмененными.
-
True (.T.) если оба, и вновь вводимое свойство, и существующее не являются массивами или не являются родными свойствами Visual FoxPro маркированными "только для чтения". Если вы для eNewValue указали какое-то значение, то существующее свойство устанавливается в это значение. Если вы опустили eNewValue, то существующее свойство остается неизменным.
-
False (.F.) если новое свойство является свойством-массивом, а существующее таковым не является. Существующее свойство останется неизмененным.
-
Если существующее свойство маркировано как "только для чтения" и является родным свойством Visual FoxPro, таким как BaseClass, то будет сгенерирована ошибка "Property <PropertyName> is read-only".
-
При использовании недействительного имени (имя свойства содержит пробелы или недопустимые символы) будет генерироваться ошибка "Incorrect property name".
Метод AddProperty( ) работает только с некоторыми родными объектами Visual FoxPro. Вы можете использовать функцию ADDPROPERTY( ) для добавления свойств любым объектам, с которыми работает Visual FoxPro, таким как COM объекты или объекты созданные командой SCATTER...NAME. Для получения более подробной информации смотрите описание функции ADDPROPERTY().
Смотрите также
Справочное руководство
Команда DEFINE CLASSМетод NewObject
Метод SaveAs (Visual FoxPro)
Метод SaveAsClass
Прочие ресурсы
Методы (Visual FoxPro)Справочное руководство по языку (Visual FoxPro)