#include "apdefap.h"
void OnClick(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)
{
SetVisible(lpszPictureName,"@ERROR",FALSE);
SetVisible(lpszPictureName,"Group3",1);
SetVisible(lpszPictureName,lpszObjectName,0); //Return-Type :BOOL
Set_Focus(lpszPictureName,"@LoginIn");
}
最佳答案
你这个是WINCC系统登陆用的吗?
SetVisible函数是用来执行是否显示的函数。
lpszPictureName:表示当前画面
lpszObjectName:表示当前对象
SetVisible(lpszPictureName,lpszObjectName,0); //Return-Type :BOOL
以上面函数为例。假如你点击一个按钮,代码如上,则点击后按钮隐藏。同理,SetVisible(lpszPictureName,"@ERROR",FALSE)表示当前画面上有一个名称为"@ERROR"对象,将其隐藏。FALSE或者0都可以。
Set_Focus(lpszPictureName,"@LoginIn");次函数表示将光标重新聚焦到当前画面中,名称为“@Loginin”对象中,比如一个输入域。
提问者对于答案的评价:
是登录使用的,回答非常清晰。请再看:
#include "apdefap.h"
void OnPropertyChanged(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName, char* value)
{
#pragma code ("UseAdmin.DLL")
#include "pwrt_api.h"
#pragma code ()
char szUserName[255];
char szPassword[255];
strcpy(szUserName,GetInputValueChar(lpszPictureName,"@LoginIn"));
strcpy(szPassword,GetInputValueChar(lpszPictureName,"@PasswordIn"));
if (PWRTSilentLogin(szUserName,szPassword) == FALSE)
{
SetVisible(lpszPictureName,"@ERROR",TRUE);
SetVisible(lpszPictureName,"@REPEAT",TRUE);
Set_Focus(lpszPictureName,"@REPEAT"); //Return-Type :BOOL
}
else
SetVisible("@控制画面.PDL","Picture Window1",0);
}
特别是"@控制画面.PDL"、"Picture Window1",完全找不到此画面,请教教我,太谢谢了!!!
原创文章,作者:more0621,如若转载,请注明出处:https://www.zhaoplc.com/plc211668.html