addproperty 方法
向一個對象添加一個新屬性。
語法
Object.AddProperty(cPropertyName [,eNewValue])
返值類型
邏輯值
參數描述
cPropertyName
指定要添加到對象中的新屬性的名稱。
eNewValue
指定新屬性的設定值。如果省略 eNewValue,如果該屬性已經存在,或者新屬性設定為“假”(.F.),則新屬性的值不變。
說明
AddProperty()方法允許您在設計時將一個屬性添加到一個對象。新屬性添加為一個PUBLIC屬性。如果該屬性成功添加到對象中,AddProperty()返回一個邏輯值“真” (.T.);否則返回一個邏輯值“假”(.F.)。如果嘗試添加的屬性已經存在,會產生一個錯誤。
下例將演示如何給一個對象添加屬性。
oMyForm = CREATEObject('Form')
oMyForm.AddProperty('MyArray(2)',1) && 增加一個數組屬性
oMyForm.MyArray(2) = 'Two'
CLEAR
? oMyForm.MyArray(1) &&顯示 1
? oMyForm.MyArray(2) &&顯示 2
如果所指定的屬性名稱不存在,將創建這個屬性,並將返回一個邏輯真值(.T.)。如果所指定的屬性名稱已經存在,將返回一個如下值:
真(.T.)。如果新屬性為數組屬性並且現有的屬性也是數組屬性。數組的大小將重新設定為新數組的大小。如果用eNewValue指定了值,數組中的所有元素都設定為該值。如果省略了eNewValue,所有的數組元素都設定為假( F )。
(.T.)。如果新屬性不是數組屬性並且現有的屬性是數組屬性,屬性將保留為數組屬性。如果用eNewVValue指定了值,數組中的所有元素都設定為該值。如果省略了eNewValue,數組元素保持不變。
真(.T.)。如果新屬性不是數組屬性並且現有的屬性也不是數組屬性或唯讀的VisualFoxPro本地屬性。如果用eNewValue指定了值,現有的屬性都設定為該值。如果省略了eNewVValue,現有的屬性值保持不變。
假( F )。如果新屬性是數組屬性並且現有的屬性不是數組屬性。現有的屬性保持不變。
l 如果現有的屬性是唯讀的 Visual FoxPro本地屬性,例如BaseClass屬性時,將出現“屬性”是唯讀的錯誤信息。
如果屬性名稱是無效的(屬性名稱包括了空格或其他非法字元),將出現“不正確的屬性名稱”的錯誤信息。