2012-09-06 63 views
0

我有一个标记值类型:脚本。 我糊状的字符串:使用(VB)脚本解析标记值

ET-Powersupply OFF 
prTimeBefore = '1' :(01,real, 'Time before [ms]'     ,'0..100000');//Time before measurement 
psDvcName = 'ETPS'  :(02,string, 'Device name [str1;str2;...]'  ,'');   // 
psSndCmd = 'ET1_STBY_OFF ; ET1_OUT_OFF'  :(04,string, 'Send CmdStr/@cmd [str1;str2;..]' ,'');   //CommandString in device-specific Lib or '@direct cmd' 
prSndRec = '1'  :(05,real, 'snd/rec/both [1/2/3]'    ,'1..3'); 

是可以自动得到这个输出的标记值

prTimeBefore = '1'; psDvcName = 'ETPS'; psDvcName = 'ETPS'; prSndRec = '1' 

我知道,我应该后搜索=和之前的单词=内的值''

但我怎么能自动让标签值被解析?以上图为例: example

谢谢!

+0

你的意思是说你想在创建/编辑它时将整个第一个文本粘贴到标记值中,然后让EA自动剥离它,以便文本2中的值结束? – Uffe

+0

是的,该程序可以解决我的问题。是的,自动 – arphex

回答

0

有两种方法可以解决这个问题;您可以编写一个in-EA脚本或者您可以构建一个Add-In。后者是更完整的解决方案,但需要更多的工作。

使用脚本方法,您可以创建一个上下文相关脚本来设置标记并使用该脚本而不是常规的EA GUI。此方法并非万无一失,因为您仍然可以绕过脚本并使用EA的常规GUI错误地设置标记值。

使用加载项,您可以让EA做出反应,以便每当有人设置标签时,您都可以根据需要进行更正。加载项可以对事件作出反应,而脚本必须由用户调用。

脚本存储在EA项目中,或存储在所有用户需要配置的MDG技术中。加载项需要分发并安装在每台客户机上。在顶部的菜单脚本 -

  1. 选择查看:

    创建一个脚本,按以下步骤操作。

  2. 在脚本编制窗口中,单击最左侧的图标以创建项目浏览器组和/或图表组。通过右键单击项目浏览器/图表,这些组中的脚本可供用户使用。
  3. 在任一组中,使用任何您喜欢的语言(VBScript,JScript或JavaScript)创建新脚本。
  4. 确保脚本响应正确类型的对象(可能是Element),然后编写脚本以打开输入对话框,解析输入值并将标记设置为解析值。
  5. 如果您在目标项目中工作,该脚本将立即供所有用户使用。

如果您编写了一个加载项,您会希望它响应EA_OnNotifyContextItemModified事件。检查项目/对象是否是正确的类型(再次,最有可能的元素),然后检查它的标记并检查是否存在其值为原始类型的“脚本”标记,然后解析它并将其设置为解析值。

该API记录在自动化下的帮助文件中。对象模型包含脚本和加载项中可用的接口,而加载项模型包含加载项可以响应的事件。