欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Windows 腳本部件  

說明屬性

可以用兩種方式來說明屬性:

還可以將屬性標記為腳本部件的缺省值。

要作為簡單值來說明一個屬性

  1. 創(chuàng)建一個 <public> 元素,將其作為 <component> 元素的子元素。
  2. 在 <public> 元素中,包含一個指定用來存儲屬性值的變量的 <property> 元素。
  3. 要初始化一個簡單屬性的值,請在 <script> 元素中創(chuàng)建一個與 propertyName (或 propertyVariable ,如果指定了這個名字)匹配的名字的全局變量,并給其指定一個值。
  4. 下面的腳本部件片段演示了兩個作為簡單值說明的屬性 (name and tag)。這兩個屬性是在 <script> 元素中使用全局變量來初始化的。
    注意   CDATA 項是必需的,以使 <script> 元素中的腳本成為不透明的。詳細信息請參閱腳本部件文件和 XML 一致性。
    <public>
       <property name="name"/>
       <property name="tag" internalName="tagVar"/>
    </public>
    
    <script language="VBScript">
       <![CDATA[
       Dim name
       name = "script component"   ' Initializes the value of name property.
       Dim tagVar
       tagVar = "10"   ' Initializes the value of tag property.
       ]]>
    </script>

使用函數(shù)來說明屬性與說明方法的方式類似。

要使用函數(shù)來說明一個屬性

  1. 在腳本部件文件的 <public> 元素中,包括一個 <property> 元素,其中可以包含一個 <get> 元素來定義只讀函數(shù),一個 <put> 元素來定義寫入函數(shù)。如果沒有定義 <put> 元素,則該屬性就是只讀的。如果沒有包括 <get> 元素,則該屬性就是只寫的。
  2. 在 <public> 之外的 <script> 元素內編寫過程來實現(xiàn)這個函數(shù)。設置屬性值的函數(shù) — 即 put 函數(shù) — 必須接收一個參數(shù),該屬性將被設置為這個值。

    該過程的名稱必須與在 <property> 元素中指定的內部名稱一致。如果沒有指定 internalName 屬性,則對于讀取函數(shù),函數(shù)名稱必須是該函數(shù)的名字再加上 get_ 前綴,對于寫入函數(shù),則應加上 put_ 前綴。

  3. 例如,下面的腳本部件片段是一個說明了三個屬性的腳本部件文件示例,這三個屬性為: sname、dateOfBirth 以及 age 。dateOfBirth 屬性是作為函數(shù)定義的,因此它可以包括錯誤檢查。age 屬性是計算得到的,因此被定義為只讀的。
    注意   CDATA 項是必需的,使 <script> 元素中的腳本稱為不透明的。詳細信息請參閱 腳本部件文件和 XML 一致性。
    <public>
       <property name="sname"/>
       <property name="age">
          <get internalName="readAge"/>
       </property>
       <property name="dateOfBirth">
          <get internalName="readDOB"/>
          <put internalName="writeDOB"/>
       </property>
    </public>
    
    <script language="VBScript">
    <![CDATA[
    Dim sname   ' 可讀寫的 sname 屬性(非函數(shù))。
    Dim gDOB   ' 用來存儲生日日期的全局變量。
    
    Function readDOB()
       ' 取 dateOfBirth 屬性的值。
       readDOB = gDOB
    End Function
    
    Function writeDOB(newDOB)
       ' 設置 dateOfBirth 屬性的值。
       If isDate(gDOB) Then
          'Error checking
          gDOB = newDOB
       End If
    End Function
    
    Function readAge()
       ' 計算只讀的 age 屬性。
       If isDate(gDOB) Then
          dobM = DatePart("m", gDOB)
          dobD = DatePart("d", gDOB)
          dobY = DatePart("yyyy", gDOB)
          todayY = DatePart("yyyy", Date)
          age = todayY - dobY
    
          ' 如果今年還沒過生日,則進行調整。
          bday = DateValue(dobM & "/" & dobD & "/" & todayY)
          If DateDiff("d", bday, DateValue(Date)) < 0 Then
             age = age - 1
          End If
          readAge = age
       End If
    End Function
    ]]>
    </script>

可以給腳本部件指定一個缺省屬性,以便宿主應用程序不必顯式地寫出屬性的名字就可以獲取或設置該屬性的值。例如,如果已聲明了一個稱為 sname 的屬性,并將其標記為缺省的,則可以在 Visual Basic 中用下述任何一種方式來使用該屬性:

Set component = CreateObject("Component.MyComponent")
n = component.sname   ' 顯式地獲取屬性。
n = component   ' 按缺省情況獲取 sname 的值。

要指定缺省屬性,請包括一個將特殊的派遣標識符(dispid)指定給該方法的屬性。關于 dispid 的詳細信息,請參閱說明事件。

要指定一個缺省屬性

請參閱

說明事件 | 說明方法 | 腳本部件文件的內容 | 腳本部件文件和 XML 一致性