---
title: "新功能：StyleVision® 中的 Authentic® 脚本支持"
date: "2010-10-14"
tags: 
  - "authentic"
  - "authentic-scripting"
  - "stylevision"
  - "v2011"
description: 探索 StyleVision 2011 中新增的“Authentic”脚本功能，它能够帮助您构建强大的数据录入应用程序，并集成了 JavaScript 和 VBScript 支持。
---
Status: #blog

Tags:  #authentic #authentic-scripting #stylevision #v2011

Categories: [Altova](/blog/zh/category/altova.md) 
# 新功能：StyleVision® 中的 Authentic® 脚本支持

StyleVision 在过去和现在的版本中，受益于一些非常出色的新功能，例如：[绝对定位](https://www.altova.com/zh/stylevision/stylesheet-designer.html)、[电子表单中的可编辑变量](https://www.altova.com/zh/stylevision/electronic-forms.html)、[全局模板](https://www.altova.com/zh/stylevision/stylesheet-designer.html)，以及当然是[图表功能](https://www.altova.com/zh/stylevision/charts.html)，这些功能为您的报告生成和电子表单设计带来了强大的能力和灵活性。 现在，随着我们2011年版本发布，新增的[集成脚本环境](https://www.altova.com/zh/stylevision/authentic-scripting.html)进一步扩展了这些功能，让您能够为Authentic用户创建强大的数据录入应用程序。 脚本功能已直接嵌入到 StyleVision 设计 (SPS) 中，因此，Authentic 的最终用户只需打开一个电子表单，即可开始更新 XML 和数据库数据源。 事件处理程序和宏组件可以使用支持的脚本语言（如JavaScript或VBScript）编写，此外，您还可以使用拖放功能，通过图形化界面设计输入表单。 要在 StyleVision 设计 (SPS) 中嵌入脚本功能，可以通过以下两种方法：一是通过“Authentic | 编辑 Authentic 脚本”菜单命令打开“脚本编辑器”窗口；二是选择“设计”选项卡中的上下文菜单，然后选择“Authentic 脚本”。 

[![stylevision_脚本](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/stylevision_script_thumb.jpg "stylevision_script")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/stylevision_script.jpg) 

脚本编辑器提供了一个界面，您可以通过该界面创建以下四个主要组件：

- **全局声明** - 包含变量和函数的脚本，这些变量和函数可以被表单、事件处理程序和宏使用。
- **宏** - 一种脚本，用于将用户自定义的操作分配给设计元素、工具栏按钮或上下文菜单项。
- **事件处理程序** - 脚本，可以与各种可用事件（如“保存”事件、"验证"事件等）关联，用于身份验证表单中的用户界面元素。脚本的返回值通常指示应用程序如何继续其处理流程。
- **表单** - 简单的图形化组件，由文本输入框、按钮等组成。表单用于在脚本中显示对话框或请求用户提供更多输入，这些脚本通常用作事件处理程序和宏。

**全局声明** “全局声明”组件默认情况下会出现在每个脚本项目中。变量和函数是通过使用与您的项目相关的脚本语言（JScript 或 VBScript）编写的代码片段来添加的。一个示例函数，名为“StartChangingAddress”，如下所示： 

[![脚本1](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/script1_thumb.gif "script1")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/script1.gif) 

在全局声明脚本中创建的变量或函数，可以被您脚本项目中的所有表单、事件处理程序和宏访问。

**宏** 宏允许您创建可以从其他脚本或事件处理程序调用的函数。例如，以下示例中的宏使用了全局声明，包括 `StartChangingAddress` 函数，用于创建一个表单，用于向当前活动的 XML 文档添加信息。 

[![脚本2](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/script2_thumb.gif "script2")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/script2.gif) 

宏可以在“属性”窗口的“高级”组中进行定义，并与 StyleVision 的设计元素相关联。支持宏的事件类型包括：

- 在更改之前
- 更改后触发
- 链接点击前触发
- 点击时触发
- 设置焦点
- 失去焦点时触发的事件

[![(图片已剪辑)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image003_thumb.gif "clip_image003")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image003.gif) 

宏命令可以在脚本项目树的右键菜单中进行控制，您可以在该菜单中添加或重命名宏命令。 

[![(图片已剪辑)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image004_thumb.gif "clip_image004")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image004.gif) 

**事件处理程序** 您也可以通过在“属性与事件”窗格的工具栏中选择“事件”图标来定义事件处理程序。在这里，您可以定义应用程序在特定操作开始或完成时应表现出的行为。可以控制的事件包括鼠标移动和点击、拖放、按键等。自版本2011起，新增的“真实视图”事件脚本包括：

- `On_AuthenticLoad`：允许Authentic在用户开始使用文件之前，设置相关功能
- `On_AuthenticBeforeSave`：允许您在保存之前进行验证，例如，如果输入的数据不完整，则可以阻止保存
- `On_AuthenticToolbarButtonClicked`：允许在工具栏按钮被点击时，扩展或修改相关行为
- `On_AuthenticUserAddedXMLNode`：允许“Authentic”模块将任何子节点或文本内容加载到新添加的XML节点中（如果需要），以便预先填充表单中的数据

脚本编辑器提供一个文件夹，其中包含了所有事件的完整列表，您可以为这些事件编写相应的事件处理脚本。 

[![(图片已剪辑)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image005_thumb.gif "clip_image005")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image005.gif)

**表单** “真核脚本编辑器”允许您通过使用对象调色板（例如文本输入框、按钮、标签等）来图形化地创建表单。表单的一般属性，如大小、背景颜色、字体样式等，可以在“属性”面板中进行定义。 

[![(图片已剪辑)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image006_thumb.gif "clip_image006")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image006.gif) 

表单对象调色板提供了所有可用的对象。 您还可以通过在右键菜单中选择“添加ActiveX控件”命令，添加已注册的ActiveX控件。 

[![(图片剪辑)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image007_thumb.gif "clip_image007")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image007.gif) 

一旦您在设计中插入了一个对象，您可以在“属性”面板中指定其外观属性，例如对齐方式、边框、滚动条等。

### 脚本在实际应用中的使用

Authentic View 脚本技术为 StyleVision 设计师提供了对用户界面各个方面的全面和灵活的控制。此外，对现有 COM 接口的扩展，进一步增强了脚本编写和交互式电子表格设计的功能。例如：**交互式、特定对象的界面元素**，例如按钮的点击、表单元素的修改、字段之间的焦点切换等，可以通过 Authentic 接口进行访问。用户操作包括：OnClick（点击事件）、OnBeforeLinkClick（链接点击前事件）、OnBeforeChange（修改前事件）、OnAfterChange（修改后事件）、OnSetFocus（获取焦点事件）和 OnKillFocus（失去焦点事件）。 

[![(图片剪辑)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image008_thumb.gif "clip_image008")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image008.gif) 

**辅助窗口** 可以被禁用，以确保只有经过身份验证的用户才能修改预定的元素、属性和实体。
**上下文（右键单击）菜单** 可以被完全自定义，可以通过移除现有命令或添加新命令来实现。 

[![(图片已剪辑)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image009_thumb.gif "clip_image009")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image009.gif) 

可以创建新的**工具栏按钮**，并将它们与**宏**关联起来，从而让设计师能够向工具栏添加完全新的**命令**。 

[![(图片剪辑)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image010_thumb.gif "clip_image010")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image010.gif) 

定制和标准产品 **工具栏** 可以通过禁用用户不应访问的任何按钮来进行修改。 

[![(图片剪辑)](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image011_thumb.gif "clip_image011")](https://www.altova.com/blog/images/NewFeatureAuthenticScriptinginStyleVisio_CC07/clip_image011.gif) 

当然。请提供您需要翻译的英文文本 **COM 应用程序编程接口** 该系统还增加了新的接口，以及额外的功能和属性，包括：

- **AuthenticView** (即：CreateXMLNode、EvaluateXPath、GetToolbarButtonState)
- **有效范围** (例如：是否已选择、获取变量值)
- **XMLData** (即：获取子元素、在指定位置插入子元素)
- **真实的事件上下文** (例如：获取XML节点、设置变量值)
- **真正的上下文菜单**（例如：统计项目数量、删除项目、获取项目文本）

**快来体验这些全新的功能，以及更多精彩内容！立即下载StyleVision的[免费30天试用版](https://www.altova.com/zh/download/stylevision/db_xslt_stylesheet_designer_enterprise.html)！**
