在一个用户创建的面板中,除了“TagName”之外怎样显示块注释,或者是如何使用一个按钮在TagName和Comment之间切换?

描述
使用一个按钮、一个文本域和两个小脚本,就可以在TagName显示和Comment显示之间进行切换 。如果希望两者同时显示,不需按钮而只要要一段脚本就可实现。
按照下面的步骤向用户创建的面板添加此项功能: n

解决方案A: 在面版中同时显示Comment和TagName

  1. 在Graphics Designer中,打开面板画面“@PG_<Name_of_faceplate>.pdl”,其中将显示CFC图的注释。n
  2. 为了显示块注释,在面板中合适的位置处插入一个名称为“CommentView”文本域。

在一个用户创建的面板中,除了“TagName”之外怎样显示块注释,或者是如何使用一个按钮在TagName和Comment之间切换?

图 1:具有Comment和TagName的面板示例n

  1. 在该面板中,选择对象“@Faceplate”。在 Event > Properties > Texts > Tag name 下的Object Properties页面中,插入下列C脚本。

#include "apdefap.h"
void OnPropertyChanged(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, char* value)
{
char com_tag[255];
char* Comment;
sprintf(com_tag,"%s.#comment",value);
// Example: "CFC1/Valve.#comment"
Comment=GetTagChar(com_tag);
SetPropChar(lpszPictureName,"CommentView","Text",Comment);
// Transfer data to text fieldn

PCS7_UpdateGroupTagname_V6(lpszPictureName, lpszObjectName, value);n

}

  1. 编译和保存脚本。n
  2. 保存更改后的画面并激活到Runtime。此时,当您选择面板时,将同时显示Comment和TagName。

解决方案B: 使用一个按钮在TagName和Comment之间切换

接着方案A中的步骤 1 到 5 执行下面的步骤。n

  1. 将用于显示块注释的文本域移动到面板中用于显示TagName的位置。

在一个用户创建的面板中,除了“TagName”之外怎样显示块注释,或者是如何使用一个按钮在TagName和Comment之间切换?

图 2:带有切换按钮的面板n

  1. 通过扩大对象“@pg_valve”,在“@PG_<Name_of_faceplate>.pdl”面板上合适的位置插入一个切换按钮(图 1)。n
  2. 打开按钮的Object Properties,在“Event > Mouse > Mouse Click”下插入下面的C脚本:

#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
if (GetVisible(lpszPictureName,"CommentView"))
SetVisible(lpszPictureName,"CommentView",FALSE);
else
SetVisible(lpszPictureName,"CommentView",TRUE);
}

  1. 编译和保存脚本。
  2. 现在使用已配置好的按钮,就可以在面板中切换显示TagName和Comment。

关键字:
面板注释,块注释,#comment

原创文章,作者:ximenziask,如若转载,请注明出处:https://www.zhaoplc.com/plc332769.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2020年11月5日
下一篇 2021年4月12日

相关推荐

发表回复

登录后才能评论