FrontPage VBA教程:Properties集合对象

   
多个对象
Properties

类似 Property对象的 meta 数据构成的集合。Properties集合中的每个项目代表了与单个 WebEx、WebFile 或 WebFolder对象相关联的项目。有关详细信息,请参阅使用 PropertyKeys 中的 PropertyKeys。请由下列的列表中选择一个主题,便能直接进入该主题的内容。

使用 Properties对象

在 Web 中使用 Properties集合

使用 PropertyKeys

使用 Properties对象

使用 Add方法将属性添加到 Properties集合对象。下列的语句将版权声明添加到 Properties集合对象。


ActiveWeb.Properties.Add "Copyright", _
    “Copyright 1999 by Rogue Cellars”)

您也可以添加以及删除分类和审批级别。


使用 ApplyChanges方法来应用已经添加到 Properties集合对象的 Property对象。下列的语句添加及应用版权属性至 Properties集合对象。


ActiveWeb.Properties.Add "Copyright", _
    “Copyright 1999 by Rogue Cellars”)
ActiveWeb.Properties.ApplyChanges

使用 Count属性来返回 Properties集合对象中属性的总数。下列示例用来检查自从 Copyright属性添加以及应用于集合对象后,Properties集合对象中属性增加的数量,然后将版权添加到 Web 页。

注意  若要运行此示例,您必须有一个名为“C:\My Documents\My Webs\Rogue Cellars”的站点 (运行 Microsoft Windows 的服务器) 或“C:\WINNT\Profiles\logon alias\Personal\My Webs\Rogue Cellars”(运行 Windows NT 的服务器)。在两种情况下,您都可用其他站点 URL 或文件来替代。


Private Sub copyrightAdd()
    Dim myWeb As WebEx
    Dim myCopyright As String
    Dim myCount As Integer
    Dim myMessage As String
    myCopyright = "Copyright 1999 by Rogue Cellars"
    myCount = ActiveWeb.Properties.Count
    myMessage = "No new properties have been added."
    Set myWeb = Webs.Open("C:\My Webs\Rogue Cellars")
    myWeb.Activate
    ActiveWeb.Properties.Add "Copyright", myCopyright
    If myCount <> ActiveWeb.Properties.Count – 1 Then
        MsgBox myMessage
        Exit Sub
    End If
    ActiveWeb.RootFolder.Files("Zinfandel.htm").Open
    ActiveDocument.body.insertAdjacentText "BeforeEnd", _
        ActiveWeb.Properties("Copyright")
    ActivePageWindow.Save
    ActiveWeb.Close
End Sub

使用 Delete方法删除单个属性。下列的语句将 Copyright属性从 Properties集合对象删除。


ActiveWeb.Properties.Delete("Copyright")

当您想要返回 Properties集合对象的容器时,请使用 parent属性。例如,下列的语句返回父站点的 URL。


myParentURL  = ActiveWeb.Properties.Parent.Url

在站点中使用 Properties集合

使用 Properties(index) 来返回单个属性,其中 index 是 properties集合对象中项目的 PropertyKey。下列的示例返回 PropertyKeyvti_hassearchbot 的值。


Private Sub CheckForSearchBot()
    Dim myProperties As Properties
    Dim myFoundSearchBot As Boolean
    Set myProperties = ActiveWeb.Properties
    With myProperties
        myFoundSearchBot = .Item("vti_hassearchbot")
    End With
End Sub

要点  属性的值是不同类型的,也就是说,每一个值可以是字符串、布尔值或数组。您可以使用 Typename()函数来确定属性值的类型。

注意  若要运行以下示例,您必须创建一个包含名为txtCategories 的文本框的表单。此外,请注意myCategories 在此示例中被声明为 variant 类型。在前一示例中,myFoundSearchBot 被声明为 Boolean,但也可以将其声明为字符串。


Private Sub GetWebPropertyCategories()
    Dim myProperties As Properties
    Dim myCategories As Variant
    Dim myCategory As Variant
    Dim txtCategories As String
    Set myProperties = ActiveWeb.Properties
    With myProperties
        myCategories = .Item("vti_categories")
        For Each myCategory In myCategories
            txtCategories = txtCategories & "|" & myCategory
        Next
    End With
End Sub

使用 PropertyKeys

属性关键字可以是组织站点信息的一个很有价值的工具。例如,您可以向自己站点中的主类别列表中添加类别。

要点  向类别列表中添加类别名称时区分大小写,但类别名称显示在用户界面 (UI) 时不区分大小写。因此,就会出现用户在客户端创建诸如“Web Administrators”的类别,但此名称已经以“web administrators”的方式存在于服务器上的情况。在这种情况下,在用户界面 (UI) 中,FrontPage 会将这两个类别都指定为“web administrators”类别,且它们二者都无法从站点 (在 UI 中) 中删除。在程序设计上,区分大小写可在 Visual Basic 编辑器的 Immediate 和 Local 窗口正确显示。

下列示例首先会将类别添加到活动站点的属性中,从相同的列表 (vti_categories) 删除 Waiting 类别,然后将新的类别添加到活动站点的每一个文件。

注意   创建新类别时,您必须首先将新的类别添加到站点,然后才能将其添加到文件。AddCategories 过程会将一个新的类别添加到站点,而下一个过程 AddCategoryToFiles 会将同一类别添加到站点中所有文件。


Private Sub AddCategories()
    Dim myWeb As WebEx
    Dim myCategory(2) As String
    Dim myItem As Variant
    Set myWeb = ActiveWeb
    myCategory(0) = "+web administrators"
    myCategory(1) = "-waiting"
    ActiveWeb.Properties("vti_categories") = myCategory
    ActiveWeb.Properties.ApplyChanges
    'List all of the items in vti_categories in the Immediate window
    For Each myItem In myWeb.Properties("vti_categories")
        Debug.Print myItem
    Next
End Sub
Private Sub AddCategoryToFiles()
    Dim myWeb As WebEx
    Dim myCategories(1) As String
    Dim myFiles As WebFiles
    Dim myFile As WebFile
    Dim myItem As Variant
    Set myWeb = ActiveWeb
    Set myFiles = myWeb.RootFolder.Files
    myCategories(0) = "+web administrators"
    For Each myFile In myFiles
        myFile.Properties("vti_categories") = myCategories
        myFile.Properties.ApplyChanges
        'List all the items in vti_categories in the Immediate window
        For Each myItem In myFile.Properties("vti_categories")
            Debug.Print myItem
        Next
    Next
End Sub

注意  虽然您可以创建例如“web administrators”的新类别,但这些新类别并不包含于安装 FrontPage 时自动创建的类别中。在它们被添加到站点之前,这些新类别在用户界面 (UI) 中是不可见的。请注意在前一示例中,新类别只有首先被添加到站点,然后才能在 UI 中可见。

下列的表格提供了关于 FrontPage 2000 中可用的属性关键字的详细信息。请注意所有 FrontPage 中的属性关键字都是以“vti_”开头的。我们建议您在要添加的属性关键字之前加上一个短的名称,例如单位名称的缩写,来降低与其他属性的命名发生冲突的机会。

属性关键字 说明 权限
vti_approvallevel 网页设置的审批级别。可用的级别有 AssignedTo、ReviewStatus 和 Categories。 可读写
vti_approvallevels 可以应用于站点中文档的可用级别列表。这个属性关键字是一个字符串向量(或字符串数组)。用来生成站点范围内的为文档所设置的“检查状态”(也称为“审批级别”)列表。您所能设置的审批级别有 AssignedTo、ReviewStatus 和 Categories。 只读
vti_approvedby 审批网页者的鉴别名称。 只读
vti_assignedby 将网页分配给用户的人的鉴别名称。 只读
vti_assigneddate 网页上一次被分配给用户的日期。 只读
vti_assignedto 网页分配对象的鉴别名称。 只读
vti_author 以字符串格式返回创作者的名称。已经或正在对文档作更改的授权创作者的身份标识。

注意  这与作为 Microsoft Office 文档属性(用户可将其设置为任意值)的一部份存储的 Author属性不同。

只读
vti_casesensitiveurls 如果站点在 URL 有大小写限制的服务器上运行,例如运行 UNIX 的服务器,则为 True。例如,如果这个属性是设置为 True,那么名为 MyFile.htm 和 myFile.htm 的文件会被当作两个不同的文件。 只读
vti_categories 类别的主列表。这个属性关键字是用于站点级别和文档级别的 meta 数据的一个字符串向量 (或字符串数组)。在站点级别上,此属性关键字包含站点中所有已知类别的列表。在文档级别上,此属性关键字则包含指定文档所属的所有类别的列表。

注意  以任何方式添加或修改类别时,这些类别都会自动更新。

可读写
vti_clientvercutoff 您可以使用这个属性关键字来设置版本禁止字符串。这在必须防止较旧版本的应用程序在特定的服务器上运行的多重版本环境中是普遍使用的。有关详细信息,请参阅 FrontPage Server Extensions 资源工具箱。 可读写
vti_dataconns FrontPage 中数据库功能所使用的数据连接列表。 只读
vti_defaultcharset 站点或网页的默认字符集。 只读
vti_defaultlanguage 站点或网页的默认语言。 只读
vti_description 提供让用户能够写入注释的多行文本框。 可读写
vti_donotpublish 如果网页标记为“草稿”或“不发布”,则设置为 True。 可读写
vti_filesize 以字节为单位的文件大小。 只读
vti_generator 此属性关键字与 HTML 文档中的生成器标记一致。vti_generator属性关键字的值包含了“生成”文档的应用程序的名称,它可能与引发处理网页的应用程序不同。例如,如果您使用 Microsoft Word 来创建或编辑网页,然后在 Microsoft Visual Basic for FrontPage 中获取此文档的 vti_generator属性关键字的值,即使程序调用通过 FrontPage 生成,vti_generator属性关键字的值仍会是 Microsoft Word。有效值为“Microsoft Word”、“Microsoft Access”以及“Microsoft FrontPage”等等。

注意  如果因 vti_generator属性关键字包含“Microsoft Word”而产生主题冲突,则 FrontPage 会服从 Word。

只读
vti_globalpage 将网页标记为全局的,也就是导航结构中的顶层网页,与主页位于同一层中,但不是主页。 可读写
vti_hasframeset 如果网页包含框架集则为 True。在创建导航栏链接时会用到此属性关键字。如果被链接的网页是框架集,则链接的目标属性将为“_top”。这会导致以新的网页来替换当前框架集以避免浏览阶段的递归框架集。 只读
vti_hasruntimebots 如果网页有实时运行组件则为 True。 只读
vti_htmlextensions 用来指定 Web 文件扩展名的连续字符串,例如 htm.html.asp。 只读
vti_httpdversion 运行在 httpd 服务器上 FrontPage 版本。 只读
vti_imagemapformat 此属性关键字设置服务器端图像映射处理机所使用的 URL 格式。有效值为 NCSA 和 CERN。此属性关键字仅对较早版本的 FrontPage 有用。FrontPage 当前使用客户端图像映射。 可读写
vti_imagemapurlprefix 设置所选图像映射格式的服务器端图像映射处理器的服务器相对 URL。如果 vti_imagemapurlprefix属性关键字的值设置为空字符串 (""),则 FrontPage Server Extensions 会自动处理服务器端图像映射。对于其他的格式,请提供图像映射处理器的名称和位置。若要指定客户端图像映射,请将此变量设置为空字符串。有关详细信息,请参阅 FrontPage Server Extensions 资源工具箱。 可读写
vti_insecureserverurl 获取 Web 站点的 http:// URL (不安全的 URL)。对可能没有安全浏览能力的较旧的浏览器提供兼容性。有关详细信息,请参阅 FrontPage Server Extensions 资源工具箱。 只读
vti_isbrowsable 如果网页文件夹是可浏览的则为 True。使用 Folder.IsBrowsable 来设置此值。 只读
vti_ischildweb 如果指定的文件夹是子站点的根则为 True。使用 Folder.MakeWeb 和 Folder.RemoveWeb 来修改。 只读
vti_isexecutable 如果文件夹在服务器上标记为可运行的内容,则将此属性设置为 True。使用 Folder.IsExecutable 来设置此值。 可读写
vti_isscriptable 如果文件夹的启用脚本为启用的,则将此属性设置为 True。使用 Folder.IsScriptable 来设置此值。 只读
vti_longfilenames 如果服务器支持比标准的 8.3 文件格式还长的文件名称则为 True。( 8.3 文件格式仅支持文件名称为八个字符,扩展名为三个字符的,例如“filename.txt”。) 只读
vti_metatags 此属性关键字与 HTML 文档中 META 标记的内容一致。所有包含于此属性关键字中的信息会被添加到 META 标记集合对象。 只读
vti_modifiedby 上一次修改网页的创作者的鉴别名称。 只读
vti_navbuttonhomelabel 与链接到主页的按钮相关联的图像文件。

注意  此图像是从与文件相关联的主题获取的,不可自定义。

可读写
vti_navbuttonhomelabeltext 覆盖在 vti_navbuttonhomelabel 上的文本。

注意  用户可自定义此文本。

可读写
vti_navbuttonlabeltext 覆盖在 vti_nvabuttonuplabel 上的文本。

注意  用户可自定义此文本。

可读写
vti_navbuttonnextlabel 与链接到导航结构中下一网页的按钮相关联的图像文件。

注意  此图像是从与文件相关联的主题获取的,不可自定义。

可读写
vti_navbuttonnextlabeltext 覆盖在 vti_navbuttonnextlabel 上的文本。

注意  用户可自定义此文本。

可读写
vti_navbuttonprevlabel 与链接到导航结构中前一网页的按钮相关联的图像文件。

注意  此图像是从与文件相关联的主题获取的,不可自定义。

可读写
vti_navbuttonprevlabeltext 覆盖在 vti_navbuttonprevlabel 上的文本。

注意  用户可自定义此文本。

可读写
vti_navbuttonuplabel 与链接到导航结构中向上一级网页的按钮相关联的图像文件。

注意  此图像是从与文件相关联的主题获取的,不可自定义。

可读写
vti_noclientimagemaps 如果客户端图像图被禁止则为 True。 只读
vti_nonnavpage 如果网页没有与导航结构中的导航节点关联则为 True。 可读写
vti_nosourcecontrol 如果站点不在版本控制之下保存则为 True。如果此项属性设置为 True,则文件不会被添加到版本控制。

注意  如果文件之前已因 vti_nosourcecontrol属性设置为 False 而被添加到版本控制工程,然后在其后属性设置为 True,则文件将不会自版本控制工程中删除。

可读写
vti_originator 此属性关键字与 HTML 文档中的“originator”META 标记一致。此属性关键字的值包含了创建文档的应用程序的名称。您不要以另一个应用程序的名称改写此属性关键字。vti_generator属性关键字应被用来跟踪上一次“生成的”HTML 网页的应用程序。在 FrontPage 中编辑文档会将 vti_generator属性关键字的值更改为“Microsoft FrontPage”。有效值为“Microsoft Word”、“Microsoft Access”以及“Microsoft FrontPage”等。

注意  如果因 vti_generator属性关键字包含“Microsoft Word”而产生主题冲突,则 FrontPage 会服从 Word。

只读
vti_privatetext 此属性关键字的值必须为整数。默认值为零或不存在。非零的值代表网页不会被添加到任何的文本索引。此属性关键字仅与 FrontPage 中内置的文本索引协同工作,并且 Microsoft Internet Information Services (IIS) 不识别此属性关键字。 可读写
vti_progid 此属性关键字与 HTML 文档中的“progid” META 标记一致。此属性关键字的值决定了当用户在 Windows 资源管理器中单击(或双击)文档的文件名称时打开文档的应用程序。有效值为“FrontPage.Editor.Documen”、“Word.Document”、“Excel.Sheet”、“PowerPoint.Slide”和“Access.Application”。

注意  如果因 vti_generator属性关键字包含“Microsoft Word”而产生主题冲突,则 FrontPage 会服从 Word。

只读
vti_scriptlanguage 指示服务器上启用哪一种脚本语言。 只读
vti_secureserverurl 获取 Web 站点的 https://URL(安全 URL)。为 Internet 上机密的传输提供一个安全的环境。有关详细信息,请参阅 FrontPage Server Extensions 资源工具箱。 只读
vti_serveripaddress 服务器的 IP 地址。

注意  以 127 开始的 IP 地址代表本地服务器。

只读
vti_serverlanguage 操作系统的语言。用于本地化。 只读
vti_showhiddenpages 如果显示隐藏的网页则为 True。 只读
vti_sourcecontrolcheckedoutby 上一次签出网页的创作者的鉴别名称。 只读
vti_sourcecontrolerror 版本控制系统上一次所返回的错误。如果在文件添加到版本控制工程时出错,这项错误会被添加到 META 标记信息。 只读
vti_sourcecontrolproject 版本控制工程的名称。Microsoft Visual SourceSafe方案的字符串应包含“$”符,例如“$/myProject”。 只读
vti_sourcecontrolsystem 此属性关键字的值是站点上活动的版本控制类型。可以是 Microsoft Visual SourceSafe 或 Microsoft Frontpage Light Weight 版本控制。这两个版本控制类型的有效值分别是“VSS”和“LW”。当版本控制工程开始时此属性关键字便会设置。有关版本控制工程的详细信息,请参阅管理版本控制工程 只读
vti_sourcecontrolversion 包含系统使用的版本控制版本的数字字符串。 只读
vti_textextensions 一般用来表示文本文件的扩展名的连续字符串。例如,连续字符串可能包含“.txt.rpt...” 只读
vti_themedefault 站点的默认主题。 只读
vti_themesusecss 如果 CSS 被用来呈现主题则为 True。 可读写
vti_timecreated 网页创建时的时间戳。时间戳是 Universal Time Coordinate (UTC) 或者 Greenwich 时间。 只读
vti_timelastmodified 网页上一次修改的时间。时间戳是 UTC 时间。这项属性关键字只有在创作者直接编辑网页时才会设置。 只读
vti_timelastwritten 上一次网页重写的时间。时间戳是 UTC 的时间。 只读
vti_-title 网页上介于 <TITLE> 标记之间的文本值。 只读
vti_usernames 指定站点的已知用户名称列表。 只读
vti_webservertype web 服务器的类型。有效值包括,Microsoft Internet Information Services 的“MSIIS”和 Personal Web Server 的“PWS”。 只读
vti_welcomenames 可以用来作为主页文件名称,例如“index.htm index.html default.htm”的连续列表。 只读

上页:FrontPage VBA教程:PageWindows集合对象 下页:FrontPage VBA教程:Survey对象

FrontPage VBA教程:Properties集合对象

FrontPage VBA教程:Survey对象 FrontPage VBA教程:System对象
FrontPage VBA教程:Theme对象 FrontPage VBA教程:Themes集合对象
FrontPage VBA教程:UndoTransaction对象 FrontPage VBA教程:WebEx对象
FrontPage VBA教程:WebFile对象 FrontPage VBA教程:WebFiles集合对象
FrontPage VBA教程:WebFolder对象 FrontPage VBA教程:WebFolders对象集合
FrontPage VBA教程:Webs集合对象 FrontPage VBA教程:WebWindowEx对象
FrontPage VBA教程:WebWindows集合对象 FrontPage VBA教程:ActiveDocument属性
FrontPage VBA教程:activeElement属性 FrontPage VBA教程:ActiveFrameWindow属性
FrontPage VBA教程:ActivePageWindow属性 FrontPage VBA教程:ActiveWeb属性
FrontPage VBA教程:ActiveWebWindow属性 FrontPage VBA教程:alinkColor属性
版权所有 © 中山市飞娥软件工作室 证书:粤ICP备09170368号