該系統(tǒng)包含標(biāo)準(zhǔn)函數(shù)。 可以按需要修改這些函數(shù)。 此外,還可以自己創(chuàng)建標(biāo)準(zhǔn)函數(shù)。
該系統(tǒng)包括一個(gè)標(biāo)準(zhǔn)函數(shù)集。
一、Alarm - 簡短描述
Alarm組包含控制WinCC報(bào)警控件的函數(shù)。標(biāo)準(zhǔn)函數(shù)可用于工具欄中的每一個(gè)按鈕。這些函數(shù)可用來創(chuàng)建自定義工具欄,例如選擇畫面,或者定義控件上的設(shè)置。
1.void AcknowledgeMessage(DWORD MsgNr)函數(shù),確認(rèn)消息系統(tǒng)中帶編號(hào)的消息,該編號(hào)被傳遞為參數(shù)。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{//確認(rèn)選擇的報(bào)警記錄消息
AcknowledgeMessage(GetTagWord("U08i_MsgNr"));
}
指定待確認(rèn)的消息號(hào)。在本例中是從變量讀取的。
2.BOOL AXC_OnBtnArcLong(char* lpszPictureName, char* pszMsgWin)函數(shù),在消息窗口中該函數(shù)表示消息存儲(chǔ)在長期歸檔中。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
3.BOOL AXC_OnBtnArcShort(char* lpszPictureName, char* pszMsgWin)函數(shù),在消息窗口中該函數(shù)表示消息存儲(chǔ)在短期歸檔中。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
4.BOOL AXC_OnBtnComment(char* lpszPictureName, char* pszMsgWin)函數(shù)
外部消息窗口操作,該函數(shù)顯示先前所選消息的注釋。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
5.BOOL AXC_OnBtnEmergAckn(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,此函數(shù)打開確認(rèn)對話框(緊急確認(rèn)/復(fù)位)。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
6.BOOL AXC_OnBtnHornAckn(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,該函數(shù)確認(rèn)蜂鳴器信號(hào)。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
7.BOOL AXC_OnBtnInfo(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,該函數(shù)顯示信息文本。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
7.BOOL AXC_OnBtnLock(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,該函數(shù)打開“設(shè)置鎖定”對話框。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
8.BOOL AXC_OnBtnLockUnlock(char* lpszPictureName, char* pszMsgWin),函數(shù),該函數(shù)鎖住在消息窗口中選擇的消息。之后,不再歸檔該消息。該函數(shù)釋放在鎖定列表中選擇的消息。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
9.BOOL AXC_OnBtnLockWin(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作.該函數(shù)調(diào)用鎖定列表。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
10.BOOL AXC_OnBtnLoop(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,此函數(shù)觸發(fā)所選消息的“報(bào)警回路”函數(shù)。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
11.BOOL AXC_OnBtnMsgFirst(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,該函數(shù)移動(dòng)到消息列表的開始處。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
12.BOOL AXC_OnBtnMsgLast(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,該函數(shù)移動(dòng)到消息列表的結(jié)束處。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的最后一條消息
AXC_OnBtnMsgLast("gs_alarm_00","Control1");
}
AXC_OnBtnMsgLast函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
13.BOOL AXC_OnBtnMsgNext(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,該函數(shù)移動(dòng)到消息列表中的下一條消息。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
14.BOOL AXC_OnBtnMsgPrev(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,該函數(shù)移動(dòng)到消息列表中的前一條消息。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
15.BOOL AXC_OnBtnMsgWin(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,該函數(shù)調(diào)用過程消息窗口。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
16.BOOL AXC_OnBtnPrint(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,打印機(jī)打印出符合在報(bào)警控件中定義的選擇標(biāo)準(zhǔn)的全部消息。
WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
17.BOOL AXC_OnBtnScroll(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,該函數(shù)激活水平和垂直滾動(dòng)功能。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 激活/取消激活滾動(dòng)功能
AXC_OnBtnScroll("gs_alarm_00","Control1");
}
AXC_OnBtnScroll函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
18.BOOL AXC_OnBtnSelect(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,該函數(shù)打開“設(shè)置選擇”對話框。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
19.BOOL AXC_OnBtnSinglAckn(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,該函數(shù)確認(rèn)當(dāng)前所選的消息。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 確認(rèn)激活的消息
AXC_OnBtnSinglAckn("gs_alarm_00","Control1");
}
AXC_OnBtnSinglAckn函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
20.BOOL AXC_OnBtnVisibleAckn(char* lpszPictureName, char* pszMsgWin)函數(shù),外部消息窗口操作,確認(rèn)消息窗口中可見的全部消息(組確認(rèn))。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{// 跳轉(zhuǎn)到WinCC報(bào)警控件中的第一條消息
AXC_OnBtnMsgFirst("gs_alarm_00","Control1");
}
AXC_OnBtnMsgFirst函數(shù)參數(shù):
“gs_alarm_00”是在其中組態(tài)WinCC報(bào)警控件的畫面的名稱。
Control 1是WinCC報(bào)警控件的對象名。
21.BOOL AXC_SetFilter(char* lpszPictureName, char* lpszObjectName, LPMSG_FILTER_STRUCT lpMsgFilter, LPCMN_ERROR, lpError)函數(shù),外部消息窗口操作,該函數(shù)為WinCC報(bào)警控件設(shè)置過濾器,以便根據(jù)指定的過濾標(biāo)準(zhǔn)篩選出可用的消息。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{BOOL ret;
MSG_FILTER_STRUCT Filter;
CMN_ERROR Error;
//重新設(shè)置過濾器結(jié)構(gòu) memset
( &Filter, 0, sizeof( MSG_FILTER_STRUCT ) );
//設(shè)置過濾器名稱 strcpy
( Filter.szFilterName, "Control1");
// 挑選選擇元素 Filter
.dwFilter = MSG_FILTER_NR_FROM | MSG_FILTER_NR_TO;
// 消息號(hào)來自 Filter
.dwMsgNr[0] = 2;
// 消息號(hào)來自 Filter
.dwMsgNr[1] = 2;
ret = AXC_SetFilter("gs_alarm_00","Control1",&Filter,&Error);
}
1. 命名該過濾器。
2. 選擇過濾器的類型。
3. 指定過濾器標(biāo)準(zhǔn)。
4. 設(shè)置過濾器。
常規(guī)使用注釋
過濾器類型和過濾器標(biāo)準(zhǔn)必須適合使用;在過濾器結(jié)構(gòu)中描述所有其它的過濾器類型。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警控件的實(shí)例
{BOOL ret;
MSG_FILTER_STRUCT Filter;
CMN_ERROR Error;
//刪除整個(gè)過濾器結(jié)構(gòu) memset
( &Filter, 0, sizeof( MSG_FILTER_STRUCT ) );
//設(shè)置空的過濾器結(jié)構(gòu) AXC
_SetFilter("gs_alarm_00","Control 1",&Filter,&Error);
}
1. 刪除該過濾器結(jié)構(gòu)。
2. 用空值填充過濾器結(jié)構(gòu)。
結(jié)構(gòu)定義MSG_FILTER_STRUCT
typedef struct {
CHAR szFilterName[MSG_MAX_TEXTLEN+1];
WORD dwFilter;
SYSTEMTIME st[2];
DWORD dwMsgNr[2];
DWORD dwMsgClass;
DWORD dwMsgType[MSG_MAX_CLASS];
DWORD dwMsgState;
WORD wAGNr[2];
WORD wAGSubNr[2];
DWORD dwArchivMode;
char szTB[MSG_MAX_TB][
MSG_MAX_TB_CONTENT+1]
DWORD dwTB;
Double dPValue[MSG_MAX_PVALUE][2];
DWORD dwPValue[2];
DWORD dwMsgCounter[2];
DWORD dwQuickSelect;
}
MSG_FILTER_STRUCT;
描述
在該結(jié)構(gòu)中定義過濾標(biāo)準(zhǔn)。
組成部分
dwFilter
通過下列常數(shù)從“m_global.h”文件定義過濾條件:
|
MSG_FILTER_DATE_FROM |
從日期 |
|
MSG_FILTER_DATE_TO |
到日期 |
|
MSG_FILTER_TIME_FROM |
從時(shí)間 |
|
MSG_FILTER_TIME_TO |
到時(shí)間 |
|
MSG_FILTER_NR_FROM |
從消息號(hào) |
|
MSG_FILTER_NR_TO |
到消息號(hào) |
|
MSG_FILTER_CLASS |
消息等級(jí) |
|
MSG_FILTER_STATE |
消息狀態(tài) |
|
MSG_FILTER_AG_FROM |
從AG號(hào) |
|
MSG_FILTER_AG_TO |
到AG號(hào) |
|
MSG_FILTER_AGSUB_FROM |
從AG子號(hào) |
|
MSG_FILTER_AGSUB_TO |
到AG子號(hào) |
|
MSG_FILTER_TEXT |
消息文本 |
|
MSG_FILTER_PVALUE |
過程值 |
|
MSG_FILTER_COUNTER_FROM |
從內(nèi)部消息計(jì)數(shù)器 |
|
MSG_FILTER_COUNTER_TO |
到內(nèi)部消息計(jì)數(shù)器 |
|
MSG_FILTER_PROCESSMSG |
過程消息 |
|
MSG_FILTER_SYSMSG |
系統(tǒng)消息 |
|
MSG_FILTER_BEDMSG |
事件消息 |
|
MSG_FILTER_DATE |
日期從...到... |
|
MSG_FILTER_TIME |
日期從...到... |
|
MSG_FILTER_NR |
消息號(hào)從...到... |
st
日期/時(shí)間從...到...
在這種情況下,st[0]是開始時(shí)間(從),st[1]是結(jié)束時(shí)間(到)
為過濾標(biāo)準(zhǔn)填充這些域:MSG_FILTER_DATE,MSG_FILTER_DATE_FROM,MSG_FILTER_DATE_TO, MSG_FILTER_TIME,MSG_FILTER_TIME_FROM和MSG_FILTER_TIME_TO
如果傳送SYSTEMTIME參數(shù)要求當(dāng)前時(shí)間,使用GetLocalTime函數(shù)而非GetSystemTime。通常這兩個(gè)函數(shù)之間的時(shí)間差別很大。
dwMsgNr
消息號(hào)從...到...
在這種情況下,dwMsgNr[0]是開始號(hào)(從),dwMsgNr[1]是結(jié)束號(hào)(到)
為過濾標(biāo)準(zhǔn)填充這些域:MSG_FILTER_NR,MSG_FILTER_NR_FROM和MSG_FILTER_NR_TO
dwMsgClass
位代碼消息等級(jí)
為過濾標(biāo)準(zhǔn)填充這個(gè)域:MSG_FILTER_CLASS
dwMsgType
每個(gè)消息等級(jí)的位代碼消息類型
為過濾標(biāo)準(zhǔn)填充這個(gè)域:MSG_FILTER_CLASS
dwMsgState
位代碼消息狀態(tài)
為過濾標(biāo)準(zhǔn)填充這個(gè)域:MSG_FILTER_STATE
wAGNr
AG號(hào)從...到...
為過濾標(biāo)準(zhǔn)填充這些域:MSG_FILTER_AG_FROM和MSG_FILTER_AG_TO
wAGSubNr
AGSubNr從...到
為過濾標(biāo)準(zhǔn)填充這些域:MSG_FILTER_AGSUB_FROM和MSG_FILTER_AGSUB_TO
dwArchivMode
歸檔/協(xié)議識(shí)別
必須用0填充。
szTB
文本塊文本
為過濾標(biāo)準(zhǔn)填充這個(gè)域:MSG_FILTER_TEXT
dwTB
文本塊激活(從...到...,位代碼)
為過濾標(biāo)準(zhǔn)填充這個(gè)域:MSG_FILTER_TEXT
dPValue
過程值從...到...
為過濾標(biāo)準(zhǔn)填充這個(gè)域:MSG_FILTER_PVALUE
dwPValue
過程值激活(從...到... 位代碼)
為過濾標(biāo)準(zhǔn)填充這個(gè)域:MSG_FILTER_PVALUE
dwMsgCounter
內(nèi)部消息計(jì)數(shù)器從...到...
為過濾標(biāo)準(zhǔn)填充這些域:MSG_FILTER_COUNTER_FROM,MSG_FILTER_COUNTER_TO
dwQuickSelect
快速選擇小時(shí),天,月
為以后擴(kuò)展而保留該參數(shù),并且必須用0預(yù)定義。
為過濾標(biāo)準(zhǔn)填充這個(gè)域:MSG_FILTER_QUICKSELECT
LOWORD類型:
|
MSG_FILTER_QUICK_MONTH |
快速選擇后n個(gè)月 |
|
MSG_FILTER_QUICK_DAYS |
快速選擇后n天 |
|
MSG_FILTER_QUICK_HOUR |
快速選擇后n個(gè)小時(shí) |
HIWORD號(hào):1...n
快速選擇函數(shù)的結(jié)束時(shí)間與本地計(jì)算機(jī)的當(dāng)前系統(tǒng)時(shí)間有關(guān)。開始時(shí)間是n * (往回計(jì)算月,日,小時(shí))。
結(jié)構(gòu)定義CMNERROR
struct CMNERRORSTRUCT {
DWORD dwError1,
DWORD dwError2,
DWORD dwError3,
DWORD dwError4,
DWORD dwError5;
TCHAR szErrorText[MAX_ERROR_LEN];
}
CMNERROR
描述
擴(kuò)展的錯(cuò)誤結(jié)構(gòu)包含錯(cuò)誤代碼和與發(fā)生的錯(cuò)誤相關(guān)的錯(cuò)誤文本。每個(gè)應(yīng)用程序可以使用該錯(cuò)誤結(jié)構(gòu)評價(jià)或發(fā)出錯(cuò)誤消息。
組成部分
dwError1 .. dwError5
可按API函數(shù)的要求使用這些條目。
API描述包含出錯(cuò)時(shí)條目的各自數(shù)值。否則,錯(cuò)誤代碼在dwError1中。
szErrorText
錯(cuò)誤代碼的文本描述緩沖區(qū)
從資源建立該內(nèi)容,因此依賴于語言。
BOOL GMsgFunction(char* pszMsgData)函數(shù)
該函數(shù)提供消息數(shù)據(jù)。
表示單個(gè)消息的全局函數(shù)。為每個(gè)消息調(diào)用全局函數(shù),為每個(gè)消息設(shè)置“觸發(fā)動(dòng)作”參數(shù)。
最好在項(xiàng)目函數(shù)中解釋消息數(shù)據(jù),從GMsgFunction調(diào)用項(xiàng)目函數(shù)。
參數(shù)
pszMsgData
指向在其中存儲(chǔ)消息數(shù)據(jù)的緩沖區(qū)的指針。
返回值
TRUE
已執(zhí)行函數(shù),無錯(cuò)。
FALSE
出錯(cuò)。
注意
請注意,WinCC安裝會(huì)重寫已修改的標(biāo)準(zhǔn)函數(shù),所以被改變的函數(shù)丟失。
Graphics - 簡短描述
Graphics組包含用于編程圖形系統(tǒng)的函數(shù)。
1.char* GetLinkedVariable(char* lpszPictureName, char* lpszObjectName, char* lpszPropertyName)函數(shù),提供與指定的對象屬性鏈接的變量的名稱。
讀出直接連接的變量名的實(shí)例。
{char* pszVarName = NULL;
char szVarName[_MAX_PATH+1];
//獲得變量名 pszVarName
= GetLinkedVariable("gs_stand_graph_00","Static Text 6","Visible");
//復(fù)制字符串
if (pszVarName != NULL)
{ strncpy(szVarName,pszVarName,_MAX_PATH);
}
//自定義代碼
//在那里用戶可以使用返回值做某事
...}
GetLinkedVariable函數(shù)參數(shù):
“gs_stand_graph_00”是在其中組態(tài)該對象的畫面的名稱。
“Static Text 6”是該對象的名稱。
“Visible”是鏈接到變量的屬性。
1). 將函數(shù)GetLinkedVariable的返回值緩沖存儲(chǔ)在pszVarName中。
2). 如果返回有效數(shù)值,將該返回值存儲(chǔ)在szVarName中。最多存儲(chǔ)_MAX_PATH個(gè)字符。
3). 執(zhí)行處理返回值的自定義代碼。
2.char* GetLocalPicture(char* lpszPictureName)函數(shù),返回指向畫面名的指針。 在這種情況下,畫面名就是該文件名,不帶擴(kuò)展名“.PDL”。
讀出本地畫面的實(shí)例。
{char* pszPicName = NULL;
char szPicName[_MAX_PATH+1];
//獲得本地畫面 pszPicName
= GetLocalPicture(lpszPictureName);
//復(fù)制字符串
if (pszPicName != NULL)
{ strncpy(szPicName,pszPicName,_MAX_PATH);
}//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
1). 將函數(shù)GetLocalPicture的返回值緩沖存儲(chǔ)在pszPicName中。
2). 如果返回有效數(shù)值,將該返回值存儲(chǔ)在szPicName中。最多存儲(chǔ)_MAX_PATH個(gè)字符。
3). 執(zhí)行處理返回值的自定義代碼。
3.char* GetParentPicture(char* lpszPictureName)函數(shù),返回指向畫面名稱的指針。 在這種情況下,畫面名就是該文件名,不帶擴(kuò)展名“.PDL”。
讀出畫面名稱路徑的實(shí)例
{char* pszPicName = NULL;
char szPicName[_MAX_PATH+1];
//獲得母畫面 pszPicName
= GetParentPicture(lpszPictureName);
//復(fù)制字符串
if (pszPicName != NULL)
{strncpy(szPicName,pszPicName,_MAX_PATH);
}//自定義代碼
//在那里用戶可以使用返回值做某事
...}
1). 將該函數(shù)GetParentPicture的返回值緩沖存儲(chǔ)在pszPicName中。
2). 如果返回有效數(shù)值,將該返回值存儲(chǔ)在szPicName中。。。。。. 最多存儲(chǔ)_MAX_PATH個(gè)字符。
3). 執(zhí)行處理返回值的自定義代碼。
4.char* GetParentPictureWindow(char* lpszPictureName)函數(shù),返回指向畫面窗口的名稱的指針。
實(shí)例:
基本畫面“Picture_1”有畫面窗口“Picture Window_1”,在其中調(diào)用畫面“Picture_2”。
畫面“Picture_2”有畫面窗口“Picture Window_2”,在其中調(diào)用畫面“Picture_3”。
該函數(shù)調(diào)用
GetParentPictureWindow(lpszPictureName)
指向畫面窗口名稱的指針:
“Picture_2”,是否從畫面“Picture_3”調(diào)用該函數(shù)。
“Picture Window_1”,是否從畫面“Picture_2”調(diào)用該函數(shù)。
“Picture_1”,是否從畫面“Picture_1”調(diào)用該函數(shù)。
5. void OpenPicture(Picture Name)函數(shù),用設(shè)置的畫面名打開畫面。
6. char* Registry2(char* mode, char* String0, char* String1)函數(shù),該函數(shù)管理字符串對(String0,String1)的列表。
Report - 簡短描述
Report組包含用來啟動(dòng)打印作業(yè)的打印預(yù)覽或打印輸出本身的函數(shù)。
1. void ReportJob(LPSTR lpJobName, LPSTR lpMethodName)函數(shù),根據(jù)參數(shù)lpMethodName的數(shù)值,決定啟動(dòng)打印作業(yè)或打印預(yù)覽。
RPTJobPreview和RPTJobPrint, 打印作業(yè)被啟動(dòng)和打印作業(yè)的預(yù)覽被啟動(dòng)
2. BOOL RPTJobPreview(LPSTR lpJobName)函數(shù),打印作業(yè)的預(yù)覽被啟動(dòng)。
啟動(dòng)作業(yè)預(yù)覽的實(shí)例
{//啟動(dòng)指定打印作業(yè)的打印預(yù)覽
RPTJobPreview("Documentation Text Library");
}
RPTJobPreview函數(shù)參數(shù):
@Text library (compact)是打印作業(yè)的名稱。
3. BOOL RPTJobPrint(LPSTR lpJobName)函數(shù),打印作業(yè)被啟動(dòng)。
啟動(dòng)打印作業(yè)的實(shí)例
{//打印輸出指定的打印作業(yè)
RPTJobPrint("@Text library (compact)");
}
RPTJobPrint函數(shù)參數(shù):
@Text library (compact)是打印作業(yè)的名稱。
4. void RptShowError(LPCSTR pszFailedFunction, CMN_ERRORA* pCmnErrorA)函數(shù),該函數(shù)提供對失敗的打印作業(yè)的錯(cuò)誤描述。該函數(shù)調(diào)用是標(biāo)準(zhǔn)函數(shù)RptJobPrint和RptJobPreview的組成部分,因此不要求單個(gè)調(diào)用命令。
結(jié)構(gòu)定義CMNERROR
struct CMNERRORSTRUCT {
DWORD dwError1,
DWORD dwError2,
DWORD dwError3,
DWORD dwError4,
DWORD dwError5;
TCHAR szErrorText[MAX_ERROR_LEN];
}
CMNERROR描述
擴(kuò)展的錯(cuò)誤結(jié)構(gòu)包含錯(cuò)誤代碼和與發(fā)生的錯(cuò)誤相關(guān)的錯(cuò)誤文本。每個(gè)應(yīng)用程序可以使用該錯(cuò)誤結(jié)構(gòu)評價(jià)或發(fā)出錯(cuò)誤消息。
組成部分
dwError1 .. dwError5
可按API函數(shù)的要求使用這些條目。
API描述包含出錯(cuò)時(shí)條目的各自數(shù)值。否則,錯(cuò)誤代碼在dwError1中。
szErrorText
錯(cuò)誤代碼的文本描述緩沖區(qū)
從資源建立該內(nèi)容,因此依賴于語言。
TagLog - 簡短描述
TagLog函數(shù)包含控制WinCC表格控件和WinCC趨勢控件的函數(shù)。
Template子組包含調(diào)用某些控制值的函數(shù)。
Toolbar Buttons子組包含用于工具欄中每個(gè)按鈕的標(biāo)準(zhǔn)函數(shù)。這些函數(shù)可用來創(chuàng)建自定義工具欄,例如選擇畫面,或者定義控件上的設(shè)置。
1. int TlgGetColumnPosition(char* lpszTemplate)函數(shù),以表格窗口中的列指針的當(dāng)前位置作為列索引。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC表格控件的實(shí)例
{char text[5];
long int columns
//獲得列數(shù)
columns = GetNumberOfColumns("TableControl_01");
//轉(zhuǎn)換長整型為字符 sprintf
(text,"%d",columns);
//在Text Field 5 SetText上設(shè)置文本
(lpszPictureName,"Static Text 5",text);
}
TlgGetNumberOfColumns函數(shù)參數(shù):
“Table Control_01”是WinCC表格控件的名稱。
1). 將函數(shù)TlgGetNumberOfColumns的返回值緩沖存儲(chǔ)在columns中。
2). 將返回值緩沖存儲(chǔ)在String text中。
3). 在靜態(tài)文本域中發(fā)出返回值。
2. int TlgGetNumberOfColumns(char* lpszTemplate)函數(shù),在表格窗口中給出列的數(shù)量。用參數(shù)lpszTemplate傳遞相應(yīng)WinCC在線表格控件窗口的名稱。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC表格控件的實(shí)例
{char text[5];
long int columns
//獲得列數(shù)
columns = GetNumberOfColumns("TableControl_01");
//轉(zhuǎn)換長整型為字符 sprintf
(text,"%d",columns);
//在Text Field 5 SetText上設(shè)置文本
(lpszPictureName,"Static Text 5",text);
}
TlgGetNumberOfColumns函數(shù)參數(shù):
“Table Control_01”是WinCC表格控件的名稱。
1). 將函數(shù)TlgGetNumberOfColumns的返回值緩沖存儲(chǔ)在columns中。
2). 將返回值緩沖存儲(chǔ)在String text中。
3). 在靜態(tài)文本域中發(fā)出返回值。
3. int TlgGetNumberOfRows(char* lpszTemplate)函數(shù),在表格窗口中給出行的數(shù)量。用參數(shù)lpszTemplate傳遞相應(yīng)WinCC在線表格控件窗口的名稱。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC表格控件的實(shí)例
{char text[5];
long int rows;
//獲得行數(shù)
rows = TlgGetNumberOfRows("TableControl_01");
//轉(zhuǎn)換長整型為字符 sprintf
(text,"%d",rows);
//在Text Field 5 SetText上設(shè)置文本
(lpszPictureName,"Static Text 5",text);
}
TlgGetNumberOfRows函數(shù)參數(shù):
Table Control_01是WinCC表格控件的名稱。
1). 將函數(shù)TlgGetNumberOfRows的返回值緩沖存儲(chǔ)在rows中。
2). 將返回值緩沖存儲(chǔ)在String text中。
3). 在靜態(tài)文本域中發(fā)出返回值。
4. int TlgGetNumberOfTrends(char* lpszTemplate)函數(shù),在趨勢窗口中給出趨勢的數(shù)量。用參數(shù)lpszTemplate傳遞相應(yīng)WinCC在線趨勢控件窗口的名稱。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC表格控件的實(shí)例
{char text[5];
long int columns
//獲得列數(shù)
columns = GetNumberOfColumns("TableControl_01");
//轉(zhuǎn)換長整型為字符 sprintf
(text,"%d",columns);
//在Text Field 5 SetText上設(shè)置文本
(lpszPictureName,"Static Text 5",text);
}
TlgGetNumberOfColumns函數(shù)參數(shù):
“Table Control_01”是WinCC表格控件的名稱。
1). 將函數(shù)TlgGetNumberOfColumns的返回值緩沖存儲(chǔ)在columns中。
2). 將返回值緩沖存儲(chǔ)在String text中。
3). 在靜態(tài)文本域中發(fā)出返回值。
5. int TlgGetRowPosition(char* lpszTemplate)函數(shù),在表格窗口中給出行指針的當(dāng)前位置。用參數(shù)lpszTemplate傳遞相應(yīng)WinCC在線表格控件窗口的名稱。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC表格控件的實(shí)例
{char text[5];
long int columns
//獲得列數(shù)
columns = GetNumberOfColumns("TableControl_01");
//轉(zhuǎn)換長整型為字符 sprintf
(text,"%d",columns);
//在Text Field 5 SetText上設(shè)置文本
(lpszPictureName,"Static Text 5",text);
}
TlgGetNumberOfColumns函數(shù)參數(shù):
“Table Control_01”是WinCC表格控件的名稱。
1). 將函數(shù)TlgGetNumberOfColumns的返回值緩沖存儲(chǔ)在columns中。
2). 將返回值緩沖存儲(chǔ)在String text中。
3). 在靜態(tài)文本域中發(fā)出返回值。
6. char* TlgGetRulerArchivNameTrend(char* lpszTemplate, int nTrend)函數(shù),在趨勢窗口中這個(gè)標(biāo)尺位置上給出帶編號(hào)nTrend的趨勢的歸擋名稱。用參數(shù)lpszTemplate傳遞相應(yīng)WinCC在線趨勢控件窗口的名稱。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC趨勢控件的實(shí)例
{char* pszVarName = NULL;
char szVarName[20];
//獲得標(biāo)尺變量名 pszVarName
= TlgGetRulerVariableNameTrend("TrendControl_01",0);
if (pszVarName != NULL)
{// 復(fù)制字符串 strncpy
(szVarName,pszVarName,19);
}
//輸出變量名 SetText
(lpszPictureName,"Static Text 6",szVarName);
}
TlgGetRulerVariableNameTrend函數(shù)參數(shù):
“Trend Control_01”是WinCC趨勢控件的名稱。
“0”是該趨勢的編號(hào)。
1). 將函數(shù)TlgGetRulerVariableNameTrend的返回值緩沖存儲(chǔ)在pszVarName中。
2). 如果返回有效數(shù)值,將返回值復(fù)制到szVarName中。
3). 在靜態(tài)文本域中發(fā)出返回值。
7. SYSTEMTIME TlgGetRulerTimeTrend(char* lpszTemplate, int nTrend)函數(shù),在趨勢窗口中這個(gè)標(biāo)尺位置上給出帶編號(hào)nTrend的趨勢的時(shí)間。用參數(shù)lpszTemplate傳遞相應(yīng)WinCC在線趨勢控件窗口。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC趨勢控件的實(shí)例
{SYSTEMTIME systime;
WORD wHour;
WORD wMin;
WORD wSec;
char szTime[10];
//獲得當(dāng)前系統(tǒng)時(shí)間 systime
= TlgGetRulerTimeTrend("TrendControl_01",0);
//獲得小時(shí) wHour
= systime.wHour;
//獲得分鐘 wMin
= systime.wMinute;
//獲得秒 wSec
= systime.wSecond;
//
sprintf(szTime,"%d:%d:%d",wHour,wMin,wSec);
//輸出變量名 SetText
(lpszPictureName,"Static Text 7",szTime);
}
1). 讀出當(dāng)前系統(tǒng)時(shí)間。
2). 從SYSTEMTIME結(jié)構(gòu)讀出小時(shí)、分和秒。
3). 創(chuàng)建包含該時(shí)間的字符串。
4). 讀出當(dāng)前時(shí)間。
8. double TlgGetRulerValueTrend(char* lpszTemplate, int nTrend)函數(shù),在趨勢窗口中這個(gè)標(biāo)尺位置上給出帶編號(hào)nTrend的趨勢的數(shù)值。用參數(shù)lpszTemplate傳遞相應(yīng)WinCC在線趨勢控件窗口。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC表格控件的實(shí)例
{char text[5];
long int columns
//獲得列數(shù)
columns = GetNumberOfColumns("TableControl_01");
//轉(zhuǎn)換長整型為字符 sprintf
(text,"%d",columns);
//在Text Field 5 SetText上設(shè)置文本
(lpszPictureName,"Static Text 5",text);
}
TlgGetNumberOfColumns函數(shù)參數(shù):
“Table Control_01”是WinCC表格控件的名稱。
1). 將函數(shù)TlgGetNumberOfColumns的返回值緩沖存儲(chǔ)在columns中。
2). 將返回值緩沖存儲(chǔ)在String text中。
3). 在靜態(tài)文本域中發(fā)出返回值。
9. char* TlgGetRulerVariableNameTrend(char* lpszTemplate, int nTrend)函數(shù),在趨勢窗口中給出編號(hào)為nTrend的趨勢的變量名。用參數(shù)lpszTemplate傳遞相應(yīng)WinCC在線趨勢控件窗口。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC趨勢控件的實(shí)例
{char* pszVarName = NULL;
char szVarName[20];
//獲得標(biāo)尺變量名 pszVarName
= TlgGetRulerVariableNameTrend("TrendControl_01",0);
if (pszVarName != NULL)
{// 復(fù)制字符串 strncpy
(szVarName,pszVarName,19);
}
//輸出變量名 SetText
(lpszPictureName,"Static Text 6",szVarName);
}
TlgGetRulerVariableNameTrend函數(shù)參數(shù):
“Trend Control_01”是WinCC趨勢控件的名稱。
“0”是該趨勢的編號(hào)。
1). 將函數(shù)TlgGetRulerVariableNameTrend的返回值緩沖存儲(chǔ)在pszVarName中。
2). 如果返回有效數(shù)值,將返回值復(fù)制到szVarName中。
3). 在靜態(tài)文本域中發(fā)出返回值。
10. char* TlgGetTextAtPos(char* lpszTemplate, int nColumn, int nLine)函數(shù),為過程變量歸檔和用戶歸檔提供表格窗口的單元格內(nèi)容作為文本。單元由nColumn和nLine指定。用參數(shù)lpszTemplate傳遞相應(yīng)WinCC在線表格控件窗口的名稱。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC趨勢控件的實(shí)例
{char* pszVarName = NULL;
char szVarName[20];
//獲得標(biāo)尺變量名 pszVarName
= TlgGetRulerVariableNameTrend("TrendControl_01",0);
if (pszVarName != NULL)
{// 復(fù)制字符串 strncpy
(szVarName,pszVarName,19);
}
//輸出變量名 SetText
(lpszPictureName,"Static Text 6",szVarName);
}
TlgGetRulerVariableNameTrend函數(shù)參數(shù):
“Trend Control_01”是WinCC趨勢控件的名稱。
“0”是該趨勢的編號(hào)。
1). 將函數(shù)TlgGetRulerVariableNameTrend的返回值緩沖存儲(chǔ)在pszVarName中。
2). 如果返回有效數(shù)值,將返回值復(fù)制到szVarName中。
3). 在靜態(tài)文本域中發(fā)出返回值。
11. BOOL TlgTableWindowPressEditRecordButton(char* lpszWindowName)函數(shù),鎖住或釋放表格窗口的編輯(切換功能)。如果允許編輯,將停止更新表格窗口。即使因?yàn)槭褂昧硪粋€(gè)函數(shù)而使編輯被禁止,表格窗口更新將仍保持停止?fàn)顟B(tài)。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
12. BOOL TlgTableWindowPressFirstButton(char* lpszWindowName)函數(shù),顯示表格窗口中顯示區(qū)域的第一個(gè)數(shù)據(jù)記錄。顯示的數(shù)據(jù)記錄數(shù)量由所組態(tài)的時(shí)間范圍決定。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
13. BOOL TlgTableWindowPressHelpButton(char* lpszWindowName)函數(shù),顯示表格窗口的在線幫助
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
14. BOOL TlgTableWindowPressInsertRecordButton(char* lpszWindowName)函數(shù),插入數(shù)據(jù)記錄。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
15. BOOL TlgTableWindowPressLastButton(char* lpszWindowName)函數(shù),顯示表格窗口中顯示區(qū)域的最后一個(gè)數(shù)據(jù)記錄。顯示的數(shù)據(jù)記錄數(shù)量由所組態(tài)的時(shí)間范圍決定。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
16. BOOL TlgTableWindowPressNextButton(char* lpszWindowName)函數(shù),顯示表格窗口中當(dāng)前顯示區(qū)域后面的數(shù)據(jù)記錄。顯示的數(shù)據(jù)記錄數(shù)量由所組態(tài)的時(shí)間范圍決定。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
17. BOOL TlgTableWindowPressNextItemButton(char* lpszWindowName)函數(shù),表格窗口的列將向左移動(dòng)一列,最左邊的列移到右邊。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
18. BOOL lgTableWindowPressOpenArchiveVariableSelectionDlgButton(char* lpszWindowName)函數(shù),打開用來鏈接表格列與歸檔和變量的對話框。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
19. BOOL TlgTableWindowPressOpenDlgButton(char* lpszWindowName)函數(shù),打開用來在線組態(tài)表格窗口的對話框。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC趨勢控件的實(shí)例
{//打開屬性對話框
TlgTrendWindowPressOpenDlgButton("TrendControl_01");
}
TlgTrendWindowPressOpenDlgButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
20. BOOL TlgTableWindowPressOpenItemSelectDlgButton(char* lpszWindowName)函數(shù),打開用來選擇表格窗口的可見列和第一列的對話框。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
21. BOOL TlgTableWindowPressPrevButton(char* lpszWindowName)函數(shù),顯示表格窗口中當(dāng)前顯示區(qū)域前面的數(shù)據(jù)記錄。顯示的數(shù)據(jù)記錄數(shù)量由所組態(tài)的時(shí)間范圍決定。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
22. BOOL TlgTableWindowPressPrevItemButton(char* lpszWindowName)函數(shù),表格窗口的列將向右移動(dòng)一列,最右邊的列移到左邊。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
23. BOOL TlgTableWindowPressRemoveRecordButton(char* lpszWindowName)函數(shù),刪除數(shù)據(jù)記錄。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
24. BOOL TlgTableWindowPressStartStopButton(char* lpszWindowName)函數(shù),打開或關(guān)閉表格窗口的更新(切換功能)。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
25. BOOL TlgTrendWindowPressFirstButton(char* lpszWindowName)函數(shù),顯示趨勢窗口中顯示區(qū)域的首要數(shù)據(jù)記錄。顯示的數(shù)據(jù)記錄數(shù)量由所組態(tài)的時(shí)間范圍決定。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
26. BOOL TlgTrendWindowPressHelpButton(char* lpszWindowName)函數(shù),顯示趨勢窗口的在線幫助。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
27. BOOL TlgTrendWindowPressLastButton(char* lpszWindowName)函數(shù),顯示趨勢窗口中顯示區(qū)域的最后一個(gè)數(shù)據(jù)記錄。顯示的數(shù)據(jù)記錄數(shù)量由所組態(tài)的時(shí)間范圍決定。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
28. BOOL TlgTrendWindowPressLinealButton(char* lpszWindowName)函數(shù),顯示或隱藏趨勢窗口標(biāo)尺(切換功能)。使用“光標(biāo)向左”和“光標(biāo)向右”鍵可以移動(dòng)標(biāo)尺。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
29. BOOL TlgTrendWindowPressNextButton(char* lpszWindowName)函數(shù),顯示趨勢窗口中當(dāng)前顯示區(qū)域后面的數(shù)據(jù)記錄。顯示的數(shù)據(jù)記錄數(shù)量由所組態(tài)的時(shí)間范圍決定。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
30. BOOL TlgTrendWindowPressNextItemButton(char* lpszWindowName)函數(shù),將趨勢窗口中所有趨勢向前移動(dòng)一個(gè)層面。前面的那個(gè)趨勢將被移到后面。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
31. BOOL TlgTrendWindowPressOneToOneButton(char* lpszWindowName)函數(shù),該趨勢窗口被重新設(shè)置為激活縮放功能前的狀態(tài)??s放被取消激活。使用鼠標(biāo)才可以選中待縮放的區(qū)域(參考TlgTrendWindowPressZoomInButton)。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{
//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
32. BOOL lgTrendWindowPressOpenArchiveVariableSelectionDlgButton(char* lpszWindowName)函數(shù),打開鏈接趨勢與歸檔和變量的對話框。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
33. BOOL TlgTrendWindowPressOpenDlgButton(char* lpszWindowName)函數(shù),打開趨勢窗口的在線組態(tài)對話框。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
34. BOOL TlgTrendWindowPressOpenItemSelectDlgButton(char* lpszWindowNumber)函數(shù),打開用來選擇可見趨勢以及要在前景中顯示的趨勢的對話框。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
35. BOOL TlgTrendWindowPressOpenTimeSelectDlgButton(char* lpszWindowNumber)函數(shù),打開定義顯示時(shí)間段的對話框。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
36. BOOL TlgTrendWindowPressPrevButton(char* lpszWindowName)函數(shù),在趨勢窗口中顯示當(dāng)前顯示區(qū)域前面的數(shù)據(jù)記錄。顯示的數(shù)據(jù)記錄數(shù)量由所組態(tài)的時(shí)間范圍決定。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
37. BOOL TlgTrendWindowPressPrevItemButton(char* lpszWindowName)
函數(shù),將趨勢窗口中所有趨勢向后移動(dòng)一個(gè)層面。后面的那個(gè)趨勢將被移到前面。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
38. BOOL TlgTrendWindowPressStartStopButton(char* lpszWindowName)函數(shù),打開或關(guān)閉趨勢窗口的更新(切換功能)。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢的實(shí)例
{//開始/停止
TlgTrendWindowPressStartStopButton("TrendControl_01");
}
TlgTrendWindowPressStartStopButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
39. BOOL TlgTrendWindowPressZoomInButton(char* lpszWindowName)函數(shù),將打開趨勢窗口中的放大鏡。 只能用鼠標(biāo)選擇比例縮放區(qū)域。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC趨勢控件的實(shí)例
{//放大
TlgTrendWindowPressZoomInButton("TrendControl_01");
}
TlgTrendWindowPressZoomInButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
40. BOOL TlgTrendWindowPressZoomOutButton(char* lpszWindowName)函數(shù),恢復(fù)趨勢窗口到缺省大小(1:1)。
使用標(biāo)準(zhǔn)函數(shù)操作WinCC報(bào)警趨勢控件的實(shí)例
{// 縮小
TlgTrendWindowPressZoomOutButton("TrendControl_01");
}
TlgTrendWindowPressZoomOutButton函數(shù)參數(shù):
“TrendControl_01”是WinCC趨勢控件的對象名。
WinCC簡短描述
WinCC組包含影響整個(gè)WinCC系統(tǒng)的函數(shù)。
1. BOOL GetHWDiag(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName, LPCTSTR lpProperties)函數(shù)
運(yùn)行時(shí)該函數(shù)可實(shí)現(xiàn)診斷的直接啟動(dòng),由事件觸發(fā)。必須在對象上組態(tài)、運(yùn)用該事件。
如果該事件發(fā)生,硬件診斷功能從關(guān)聯(lián)PLC的STEP7被啟動(dòng)。
為了使用該功能,必須滿足下列條件:
· WinCC項(xiàng)目,帶有從其進(jìn)行訪問的畫面,而且STEP7項(xiàng)目必須在同一臺(tái)計(jì)算機(jī)上。
· 必須將WinCC項(xiàng)目存儲(chǔ)為STEP7項(xiàng)目(STEP7 Projekt\wincproj\WinCC Projekt)的子目錄。
· 已將S7變量映射到WinCC。
2. BOOL GetHWDiagLevel(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName, LPCTSTR lpProperties, DWORD dwLevel)函數(shù)
根據(jù)在dwLevel下面指定的用戶管理員功能號(hào)為激活的用戶執(zhí)行用戶配置文件級(jí)測試。
之后,運(yùn)行時(shí)診斷被直接啟動(dòng)并由事件觸發(fā),須在對象上組態(tài)該事件。
如果該事件發(fā)生,硬件診斷功能從關(guān)聯(lián)PLC的STEP7被啟動(dòng)。
為了使用該功能,必須滿足下列條件:
· 在WinCC中激活的用戶必須有必要的用戶配置文件級(jí)。
· WinCC項(xiàng)目,帶有從其進(jìn)行訪問的畫面,而且STEP7項(xiàng)目必須在同一臺(tái)計(jì)算機(jī)上。
· 必須將WinCC項(xiàng)目存儲(chǔ)為STEP7項(xiàng)目(STEP7 Projekt\wincproj\WinCC Projekt)的子目錄.
· 已將S7變量映射到WinCC。
3. BOOL GetKopFupAwl(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName, LPCTSTR lpProperties)函數(shù)
該函數(shù)執(zhí)行WinCC Step7編輯器“KFA”的網(wǎng)絡(luò)激活。
執(zhí)行該函數(shù),完成兩項(xiàng)子任務(wù):
· 建立從WinCC訪問網(wǎng)絡(luò)所需要的數(shù)據(jù)。
· 將該數(shù)據(jù)傳送到Step 7并使用AUTAPI定位Step 7程序中操作數(shù)的利用點(diǎn)。
4. BOOL GetKopFupAwlLevel(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName,LPCTSTR lpProperties, DWORD dwLevel)函數(shù)
根據(jù)在dwLevel下面指定的用戶管理員功能號(hào)為激活的用戶執(zhí)行用戶配置文件級(jí)測試,然后訪問Step 7編輯器“KFA”。
作為三項(xiàng)子任務(wù)執(zhí)行該函數(shù):
· 建立從WinCC進(jìn)行網(wǎng)絡(luò)訪問所需要的數(shù)據(jù)。
· 在WinCC中為激活的用戶執(zhí)行用戶配置文件級(jí)測試。
· 將該數(shù)據(jù)傳送到Step 7并使用AUTAPI定位Step 7程序中操作數(shù)的利用點(diǎn)。
5. void OnDeactivateExecute()函數(shù)
終止WinCC時(shí)調(diào)用該函數(shù)。
由于它是標(biāo)準(zhǔn)函數(shù),可以插入指令,然后執(zhí)行它們。
6. void OnErrorExecute(CCAPErrorExecute ErrorExecute)函數(shù)
執(zhí)行動(dòng)作或函數(shù)而發(fā)生錯(cuò)誤時(shí)由系統(tǒng)調(diào)用OnErrorExecute。
此函數(shù)能夠確定出錯(cuò)的準(zhǔn)確原因。
由系統(tǒng)調(diào)用該函數(shù),并且不要求附加的調(diào)用命令。
由于包括作為標(biāo)準(zhǔn)函數(shù)的此函數(shù),可以改變輸出的類型。
7. void OnTime(CCAPTime time)函數(shù)
OnTime只能由系統(tǒng)調(diào)用。該函數(shù)給出所有動(dòng)作的運(yùn)行時(shí)間或確定哪個(gè)動(dòng)作的運(yùn)行時(shí)間超出了指定時(shí)間。 通過APDIAG可以激活和取消激活時(shí)間測量。
由于此函數(shù)是一個(gè)標(biāo)準(zhǔn)函數(shù),所以可以通過修改函數(shù)代碼來改變輸出的類型。
結(jié)構(gòu)定義CCAPTime
typedef struct {
DWORD dwCurrentThreadID; 當(dāng)前線程的線程ID
DWORD dwCode; 代碼
BOOL bCycle; 周期/非周期
char* szApplicationName;應(yīng)用程序的名稱
char* szFunctionName; 函數(shù)的名稱
LPVOID lpParam; 指向動(dòng)作堆棧的指針
DWORD dwParamSize; 動(dòng)作堆棧的大小
double dblTime;
DWORD dwFlags; 標(biāo)記
} CCAPTime;
組成部分
dwCode
dwCode結(jié)構(gòu)元素提供OnTime調(diào)用信息:
dwCode = 113 |
用每個(gè)動(dòng)作的時(shí)間調(diào)用 |
dwCode = 114 |
用一個(gè)動(dòng)作的超時(shí)調(diào)用 |
dwFlags
dwFlags結(jié)構(gòu)元素提供輸出類型的信息:
dwFlags = TRUE |
結(jié)果被輸出到文件中。 |
dwFlags = FALSE |
結(jié)果被輸出到診斷窗口中 |
Windows - 簡短描述
Windows組包含Execute Program函數(shù)。
該函數(shù)可用來執(zhí)行任何功能。
1. unsigned int Execute(char* Program_Name)函數(shù),用指定的名稱啟動(dòng)該程序。
從WinCC啟動(dòng)程序的實(shí)例
{//啟動(dòng)程序calc.exe
執(zhí)行程序 ("C:\\Winnt\\system32\\calc.exe");
}
指定帶路徑的文件為參數(shù)。
二、內(nèi)部函數(shù)
內(nèi)部函數(shù)用來畫圖形對象和使歸檔動(dòng)態(tài)化,并用于項(xiàng)目函數(shù)、標(biāo)準(zhǔn)函數(shù)和全局腳本動(dòng)作中。
在整個(gè)項(xiàng)目中都識(shí)別內(nèi)部函數(shù)。
既不能創(chuàng)建新的內(nèi)部函數(shù),也不能修改已存在的內(nèi)部函數(shù)。
1. allocate保留和釋放工作存儲(chǔ)器空間的函數(shù)
void SysFree(void* lpFree)函數(shù),通過SysMalloc函數(shù)釋放保留的存儲(chǔ)器區(qū)域。
參數(shù)lpFree,指向通過SysMalloc函數(shù)保留的存儲(chǔ)器區(qū)域的指針。
2. void* SysMalloc(unsigned long int size)函數(shù),為動(dòng)作保留存儲(chǔ)器空間。存儲(chǔ)器區(qū)域被分配給該動(dòng)作。已完成動(dòng)作和已傳送結(jié)果時(shí),系統(tǒng)再次釋放存儲(chǔ)器。
SysFree函數(shù)可用來過早釋放保留的存儲(chǔ)器空間。
參數(shù)size,按字節(jié)計(jì)算的存儲(chǔ)器區(qū)域的大小。
3. c_bib函數(shù)組c_bib包含來自C庫的C函數(shù)
Graphics - 簡短描述
使用Graphics組中的函數(shù)可以修改或調(diào)用WinCC對象的圖形屬性。
Axes - 簡短描述
Axes組中的函數(shù)僅用于棒圖對象。
該函數(shù)可用來修改或調(diào)用各種棒圖對象屬性。
1. BOOL GetAlignment(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指明文本在棒圖的左面還是右面。
讀出棒圖對象的布爾型屬性的實(shí)例
{
BOOL bscaling;
//獲得標(biāo)尺狀態(tài) bscaling
= GetScaling(lpszPictureName,"Bar1");
if (bscaling)
{
// 自定義代碼
// 棒圖對象有一個(gè)附加的標(biāo)尺
...
}
else
{
// 自定義代碼
// 棒圖對象沒有附加的刻度
...
}
}
GetScaling函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Bar1”是該對象的名稱。
1). 讀出棒圖刻度是否可見以及bscaling中的緩沖區(qū)。
2). 根據(jù)該函數(shù)的返回值執(zhí)行自定義代碼。
2. double GetAxisSection(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指定兩個(gè)鄰近軸標(biāo)簽之間的數(shù)值差。
3. BOOL GetExponent(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指定軸標(biāo)簽對應(yīng)于小數(shù)或指數(shù)形式。
讀出棒圖對象的布爾型屬性的實(shí)例
{BOOL bscaling;
//獲得標(biāo)尺狀態(tài) bscaling
= GetScaling(lpszPictureName,"Bar1");
if (bscaling)
{
// 自定義代碼
// 棒圖對象有一個(gè)附加的標(biāo)尺
...
}
else
{
// 自定義代碼
// 棒圖對象沒有附加的刻度
...
}
}
GetScaling函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Bar1”是該對象的名稱。
1). 讀出棒圖刻度是否可見以及bscaling中的緩沖區(qū)。
2). 根據(jù)該函數(shù)的返回值執(zhí)行自定義代碼。
4. long int GetLeftComma(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指定軸標(biāo)簽中的整數(shù)數(shù)量。
參數(shù)lpszPictureName
畫面名lpszObjectName
對象名
返回值,軸標(biāo)簽中的整數(shù)數(shù)量
5. BOOL GetLongStrokesBold(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指定以粗體還是常規(guī)形式顯示標(biāo)尺上的主要刻度線。
讀出棒圖對象的布爾型屬性的實(shí)例
{
BOOL bscaling;
//獲得標(biāo)尺狀態(tài) bscaling
= GetScaling(lpszPictureName,"Bar1");
if (bscaling)
{
// 自定義代碼
// 棒圖對象有一個(gè)附加的標(biāo)尺
...
}
else
{
// 自定義代碼
// 棒圖對象沒有附加的刻度
...
}
}
GetScaling函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Bar1”是該對象的名稱。
1). 讀出棒圖刻度是否可見以及bscaling中的緩沖區(qū)。
2). 根據(jù)該函數(shù)的返回值執(zhí)行自定義代碼。
6. long int GetLongStrokesSize(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指定主要刻度線的長度。
7. long int GetLongStrokesTextEach(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指定主要刻度線標(biāo)簽的間隔長度。
8. long int GetRightComma(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指定坐標(biāo)軸標(biāo)簽中的小數(shù)位數(shù)。
9. long int GetScaleTicks(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它將標(biāo)尺單位定義為標(biāo)尺分段的數(shù)量。一個(gè)標(biāo)尺分段對應(yīng)于兩條主要刻度線之間的范圍
10. BOOL GetScaling(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖時(shí),它指定激活還是取消激活標(biāo)尺。
讀出棒圖對象的布爾型屬性的實(shí)例
{
BOOL bscaling;
//獲得標(biāo)尺狀態(tài) bscaling
= GetScaling(lpszPictureName,"Bar1");
if (bscaling)
{
// 自定義代碼
// 棒圖對象有一個(gè)附加的標(biāo)尺
...
}
else
{
// 自定義代碼
// 棒圖對象沒有附加的刻度
...
}
}
GetScaling函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Bar1”是該對象的名稱。
1). 讀出棒圖刻度是否可見以及bscaling中的緩沖區(qū)。
2). 根據(jù)該函數(shù)的返回值執(zhí)行自定義代碼。
11. long int GetScalingType(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指定棒圖標(biāo)尺的類型。
Color - 簡短描述
使用Color組中的函數(shù)可以修改或調(diào)用對象的顏色屬性。
1. long int GetBackColor(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定對象的背景色為數(shù)字值。
讀出顏色值的實(shí)例
{
long int bk_color;
//
linkinfo.szLinkName是變量名。 // linkinfo.dwCycle是更新周期 // linkinfo.LinkType是該連接的類型
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetBackColor函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Static Text1”是該對象的名稱。
1). 讀出當(dāng)前背景色和bk_color中的緩沖區(qū)。
2). 執(zhí)行處理返回值的自定義代碼。
2. long int GetBackColor2(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指定棒圖的顏色為數(shù)字值。
讀出顏色值的實(shí)例
{
long int bk_color;
//
linkinfo.szLinkName是變量名。 // linkinfo.dwCycle是更新周期 // linkinfo.LinkType是該連接的類型
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetBackColor函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Static Text1”是該對象的名稱。
3. long int GetBackColor3(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指定棒圖的背景色為數(shù)字值。
讀出顏色值的實(shí)例
{
long int bk_color;
//
linkinfo.szLinkName是變量名。 // linkinfo.dwCycle是更新周期 // linkinfo.LinkType是該連接的類型
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetBackColor函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Static Text1”是該對象的名稱。
Fill - 簡短描述
Fill組中的函數(shù)控制對象的動(dòng)態(tài)填充。
1. BOOL GetFilling(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定是否激活背景色動(dòng)態(tài)填充。
讀出“動(dòng)態(tài)填充”屬性的實(shí)例
{
BOOL bfilling;
//獲得動(dòng)態(tài)填充的實(shí)際狀態(tài) bfilling
= GetFilling(lpszPictureName," Rectangle 1");
if(bfilling)
{
// 自定義代碼
// 動(dòng)態(tài)填充是否被激活
...
}
else
{
// 自定義代碼
// 動(dòng)態(tài)填充是否被取消激活
...
}
}
GetFilling函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Rectangle1”是該對象的名稱。
1). 讀出動(dòng)態(tài)填充是否激活以及bfilling中的緩沖區(qū)。
2). 根據(jù)該函數(shù)的返回值執(zhí)行自定義代碼。
2.long int GetFillingIndex(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定當(dāng)前填充量。
讀出填充索引的實(shí)例
{
long int filling_index;
//獲得該對象的實(shí)際填充索引 filling
_index = GetFillingIndex(lpszPictureName," Rectangle 1");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetFillingIndex函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Rectangle1”是該對象的名稱。
1). 讀出該對象的當(dāng)前填充索引以及filling_index中的緩沖區(qū)。
2). 執(zhí)行處理返回值的自定義代碼。
Flash - 簡短描述
使用Flash組中的函數(shù)可以修改或調(diào)用各種閃爍屬性。
1. long int GetBackFlashColorOff(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定取消激活狀態(tài)的閃爍背景色
讀出閃爍顏色的實(shí)例
{
long int flashcol_on;
//獲得背景閃爍顏色
flashcol_on = GetBackFlashColorOn(lpszPictureName,"Group 1");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetBackFlashColorOn函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Group 1”是該對象的名稱。
1). 讀出該對象的開狀態(tài)的當(dāng)前背景閃爍顏色以及flashcol_on中的緩沖區(qū)。
2). 執(zhí)行處理返回值的自定義代碼。
2. long int GetBackFlashColorOn(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定激活狀態(tài)的背景閃爍顏色。
讀出閃爍顏色的實(shí)例
{
long int flashcol_on;
//獲得背景閃爍顏色
flashcol_on = GetBackFlashColorOn(lpszPictureName,"Group 1");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetBackFlashColorOn函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Group 1”是該對象的名稱。
1). 讀出該對象的開狀態(tài)的當(dāng)前背景閃爍顏色以及flashcol_on中的緩沖區(qū)。
2). 執(zhí)行處理返回值的自定義代碼。
3. long int GetBorderFlashColorOff(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定取消激活狀態(tài)的邊框或線閃爍顏色。
讀出閃爍顏色的實(shí)例
{
long int flashcol_on;
//獲得背景閃爍顏色
flashcol_on = GetBackFlashColorOn(lpszPictureName,"Group 1");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetBackFlashColorOn函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Group 1”是該對象的名稱。
4. long int GetBorderFlashColorOn(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定激活狀態(tài)的邊框或線閃爍顏色。
讀出閃爍顏色的實(shí)例
{
long int flashcol_on;
//獲得背景閃爍顏色
flashcol_on = GetBackFlashColorOn(lpszPictureName,"Group 1");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetBackFlashColorOn函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Group 1”是該對象的名稱。
5. BOOL GetFlashBackColor(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定是否激活背景閃爍。
讀出“閃爍背景激活”屬性的實(shí)例
{
BOOL bflash_col;
//了解閃爍是開還是關(guān) bflash
_col = GetFlashBackColor(lpszPictureName,"Group 1");
if(bflash_col)
{
// 自定義代碼
// 閃爍是否被激活
...
}
else
{
// 自定義代碼
// 閃爍是否被取消激活
...
}
}
GetFlashBackColor函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Group 1”是該對象的名稱。
1). 讀出背景色閃爍是否被激活以及bflash_col中的緩沖區(qū)。
2). 根據(jù)該函數(shù)的返回值執(zhí)行自定義代碼。
Focus - 簡短描述
使用Focus組中的函數(shù),可以設(shè)置焦點(diǎn)或輪詢哪個(gè)對象有焦點(diǎn)。
1. char* Get_Focus()函數(shù),指定當(dāng)前或最后聚焦的對象的名稱。
要求當(dāng)前在哪一個(gè)對象上設(shè)置焦點(diǎn)的實(shí)例
{
char* pszValue = NULL;
char szValue[_MAX_PATH+1];
//獲得具有焦點(diǎn)的對象 pszValue
= Get_Focus();
//復(fù)制字符串
if (pszValue != NULL)
{
strncpy(szValue,pszValue,_MAX_PATH);
}
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
1). 讀出在其上設(shè)置焦點(diǎn)的對象以及pszValue中的緩沖區(qū)。
2). 如果返回有效數(shù)值,將該函數(shù)的返回值存儲(chǔ)在本地字符串szValue中。最多存儲(chǔ)_MAX_PATH個(gè)字符。
3). 執(zhí)行處理返回值的自定義代碼。
Font - 簡短描述
使用Font組中的函數(shù)可以修改或調(diào)用影響文本的各種屬性。
1. long int GetAlignmentLeft(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),定義水平文本對齊(左對齊、居中、右對齊)。
讀出字體大小的實(shí)例
{
long int fontsize;
//獲得實(shí)際字體大小 fontsize
= GetFontSize(lpszPictureName,"Static Text 1");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetFontSize函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Static Text1”是該對象的名稱。
1). 讀出當(dāng)前字體大小和fontsize中的緩沖區(qū)。
2). 執(zhí)行處理返回值的自定義代碼。
2. long int GetAlignmentTop(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),定義垂直文本對齊(上對齊、居中、下對齊)。
讀出字體大小的實(shí)例
{
long int fontsize;
//獲得實(shí)際字體大小 fontsize
= GetFontSize(lpszPictureName,"Static Text 1");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetFontSize函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Static Text1”是該對象的名稱。
3. BOOL GetFontBold(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),定義字體樣式是否為“粗體字”。
讀出靜態(tài)文本域的布爾型屬性的實(shí)例
{
BOOL bbold;
//了解文本是否是粗體字 bbold
= GetFontBold(lpszPictureName,"Static Text 1");
if(bbold)
{
// 自定義代碼
// 字體是否是粗體字
...
}
else
{
// 自定義代碼
// 字體是否不是粗體字
...
}
}
GetFontBold函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Static Text1”是該對象的名稱。
4. char* GetText(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),為對象,例如靜態(tài)文本、復(fù)選框和單選框,指定“文本”屬性的數(shù)值。
讀出文本的實(shí)例
{
char* pszValue = NULL;
char szValue[13];
//獲得實(shí)際設(shè)置的文本 pszValue
= GetText(lpszPictureName," Static Text 1");
if(pszValue != NULL)
{
//復(fù)制字符串
strncpy(szValue,pszValue,12);
}
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetText函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Static Text1”是該對象的名稱。
5. long int GetLayer(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定該對象所在的畫面層。
參數(shù)lpszPictureName
畫面名lpszObjectName
Geometry - 簡短描述
使用Geometry組中的函數(shù)可以修改或調(diào)用對象的大小、位置和其它幾何屬性。
1. long int GetActualPointLeft(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定多邊形或折線中當(dāng)前位置的X軸數(shù)值。
讀出對象位置的實(shí)例
{
long lPos;
//獲得對象的X軸位置 lPos
= GetLeft(lpszPictureName,"WinCCLogo");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetLeft函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“WinCCLogo”是該對象的名稱。
1). 讀出對象的當(dāng)前X軸位置以及l(fā)Pos中的緩沖區(qū)。
2). 執(zhí)行處理返回值的自定義代碼。
2. long int GetActualPointTop(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定多邊形或折線中當(dāng)前頂點(diǎn)的Y軸數(shù)值。
讀出對象位置的實(shí)例
{
long lPos;
//獲得對象的Y軸位置 lPos
= GetTop(lpszPictureName,"WinCCLogo");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetTop函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“WinCCLogo”是該對象的名稱。
3. long int GetBoxCount(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定復(fù)選框和單選框的數(shù)字域。
參數(shù)lpszPictureName
畫面名lpszObjectName
4. long int GetDirection(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指出棒圖的方向。
參數(shù)lpszPictureName
畫面名lpszObjectName
5. long int GetEndAngle(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)
函數(shù),指定部分圓和部分橢圓以及圓弧和橢圓弧的結(jié)束角度。
6. BOOL GetGrid(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定是否在圖形編輯器的圖形域中激活網(wǎng)格。
7. long int GetGridHeight(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定在圖形編輯器的圖形域中網(wǎng)格的高度。
8. long int GetGridWidth(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定在圖形編輯器的圖形域中網(wǎng)格的寬度。
9. long int GetHeight(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定構(gòu)成對象的矩形的高度。
讀出對象位置的實(shí)例
{
long lHeight;
//獲得對象的高度 lHeight
= GetHeight(lpszPictureName,"WinCCLogo");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetHeight函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“WinCCLogo”是該對象的名稱。
1). 讀出對象的當(dāng)前高度以及l(fā)Height中的緩沖區(qū)。
2). 執(zhí)行處理返回值的自定義代碼。
10. long int GetLeft(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),定義構(gòu)成對象的矩形左上角的X軸位置。
讀出對象位置的實(shí)例
{
long lPos;
//獲得對象的X軸位置 lPos
= GetLeft(lpszPictureName,"WinCCLogo");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetLeft函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“WinCCLogo”是該對象的名稱。
11. long int GetPointCount(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定多邊形或折線的角的數(shù)量。
12. long int GetRadius(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName);
函數(shù),定義圓、部分圓或圓弧的半徑。
讀出對象位置的實(shí)例
{
long lHeight;
//獲得對象的高度 lHeight
= GetHeight(lpszPictureName,"WinCCLogo");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetHeight函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“WinCCLogo”是該對象的名稱。
1). 讀出對象的當(dāng)前高度以及l(fā)Height中的緩沖區(qū)。
2). 執(zhí)行處理返回值的自定義代碼。
13. long int GetRadiusHeight(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定橢圓、部分橢圓或橢圓弧的垂直半徑。
讀出對象位置的實(shí)例
{
long lHeight;
//獲得對象的高度 lHeight
= GetHeight(lpszPictureName,"WinCCLogo");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetHeight函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“WinCCLogo”是該對象的名稱。
14. long int GetRadiusWidth(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定橢圓、部分橢圓或橢圓弧的水平半徑。
15. long int GetReferenceRotationLeft(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用線、多邊形和折線時(shí),它指定旋轉(zhuǎn)位置(圍繞其旋轉(zhuǎn)對象的中心坐標(biāo)軸)的X軸數(shù)值。
讀出對象位置的實(shí)例
{
long lPos;
//獲得對象的X軸位置 lPos
= GetLeft(lpszPictureName,"WinCCLogo");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetLeft函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“WinCCLogo”是該對象的名稱。
16. long int GetReferenceRotationTop(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用線、多邊形和折線時(shí),它指定旋轉(zhuǎn)位置(圍繞其旋轉(zhuǎn)對象的中心坐標(biāo)軸)的Y軸數(shù)值。
17. long int GetRotationAngle(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),定義圍繞中心坐標(biāo)軸旋轉(zhuǎn)線、多邊形和折線的角度。
18. long int GetStartAngle(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定部分圓和部分橢圓以及圓弧和橢圓弧的起始角度。
讀出對象位置的實(shí)例
{
long lHeight;
//獲得對象的高度 lHeight
= GetHeight(lpszPictureName,"WinCCLogo");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetHeight函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“WinCCLogo”是該對象的名稱。
19. long int GetTop(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定構(gòu)成對象的矩形左上角的Y軸位置。
讀出對象位置的實(shí)例
{
long lPos;
//獲得對象的Y軸位置 lPos
= GetTop(lpszPictureName,"WinCCLogo");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetTop函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“WinCCLogo”是該對象的名稱。
20. long int GetWidth(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定構(gòu)成對象的矩形的寬度。
讀出對象位置的實(shí)例
{
long lWidth;
//獲得對象的寬度 lWidth
= GetWidth(lpszPictureName,"WinCCLogo");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetWidth函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“WinCCLogo”是該對象的名稱。
21. long int GetZeroPoint(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它顯示零點(diǎn)。
讀出對象位置的實(shí)例
{
long lHeight;
//獲得對象的高度 lHeight
= GetHeight(lpszPictureName,"WinCCLogo");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetHeight函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“WinCCLogo”是該對象的名稱。
i_o - 簡短描述
使用i_o組中的函數(shù)可以修改或調(diào)用影響輸入和輸出值的各種屬性。
1. char* GetAssignments(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),對于列表,分配文本給數(shù)值范圍
2. BOOL GetAssumeOnExit(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用I/O域時(shí),它指定退出該域時(shí)是否應(yīng)用輸入的數(shù)值。
3. BOOL GetAssumeOnFull(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用I/O域時(shí),它指定完成輸入時(shí)是否應(yīng)用輸入的數(shù)值。
4. long int GetBitNumber(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用列表類型“位”時(shí),它指定輸出值中相關(guān)的位。
讀出布爾型屬性的實(shí)例
{
BOOL bHiddenInput;
//獲得隱藏輸入的狀態(tài) bHiddenInput
= GetHiddenInput(lpszPictureName,"IO Field 1");
if(bHiddenInput)
{
// 自定義代碼
// 隱藏輸入是否被激活
...
}
else
{
// 自定義代碼
// 隱藏輸入是否被取消激活
...
}
}
GetHiddenInput函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“IO Field1”是該對象的名稱。
1). 讀出文本是否是粗體字以及bHiddenInput中的緩沖區(qū)。
2). 根據(jù)該函數(shù)的返回值執(zhí)行自定義代碼。
5. BOOL GetClearOnError(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用I/O域時(shí),它指定錯(cuò)誤輸入后是否激活刪除內(nèi)容。
6. long int GetDataFormat(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),對于I/O域,它指定域內(nèi)容的數(shù)據(jù)類型。
讀出布爾型屬性的實(shí)例
{
BOOL bHiddenInput;
//獲得隱藏輸入的狀態(tài) bHiddenInput
= GetHiddenInput(lpszPictureName,"IO Field 1");
if(bHiddenInput)
{
// 自定義代碼
// 隱藏輸入是否被激活
...
}
else
{
// 自定義代碼
// 隱藏輸入是否被取消激活
...
}
}
GetHiddenInput函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“IO Field1”是該對象的名稱。
7. BOOL GetHiddenInput(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),對于I/O域,它指定是否激活隱藏輸入。
讀出布爾型屬性的實(shí)例
{
BOOL bHiddenInput;
//獲得隱藏輸入的狀態(tài) bHiddenInput
= GetHiddenInput(lpszPictureName,"IO Field 1");
if(bHiddenInput)
{
// 自定義代碼
// 隱藏輸入是否被激活
...
}
else
{
// 自定義代碼
// 隱藏輸入是否被取消激活
...
}
}
GetHiddenInput函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“IO Field1”是該對象的名稱。
8. double GetInputValueDouble(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),對于I/O域,它定義數(shù)據(jù)類型為“雙精度型”的輸入值。
9. long int GetListType(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)
函數(shù),指定“文本列表”對象的列表類型。
讀出布爾型屬性的實(shí)例
{
BOOL bHiddenInput;
//獲得隱藏輸入的狀態(tài) bHiddenInput
= GetHiddenInput(lpszPictureName,"IO Field 1");
if(bHiddenInput)
{
// 自定義代碼
// 隱藏輸入是否被激活
...
}
else
{
// 自定義代碼
// 隱藏輸入是否被取消激活
...
}
}
GetHiddenInput函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“IO Field1”是該對象的名稱。
10. long int GetNumberLines(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定“文本列表”對象的可見行數(shù)。
讀出布爾型屬性的實(shí)例
{
BOOL bHiddenInput;
//獲得隱藏輸入的狀態(tài) bHiddenInput
= GetHiddenInput(lpszPictureName,"IO Field 1");
if(bHiddenInput)
{
// 自定義代碼
// 隱藏輸入是否被激活
...
}
else
{
// 自定義代碼
// 隱藏輸入是否被取消激活
...
}
}
GetHiddenInput函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“IO Field1”是該對象的名稱。
11. char* GetOutputFormat(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),對于I/O域,它指定輸出格式。
12. char* GetOutputValueChar(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),對于I/O域,它建立數(shù)據(jù)類型為“字符”的輸出值。當(dāng)I/O域的內(nèi)容為數(shù)據(jù)類型“字符串”時(shí),才使用該函數(shù)。
Limits - 簡短描述
使用Limits組中的函數(shù)可以修改或調(diào)用影響限值的各種屬性。
1. double GetAlarmHigh(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指出報(bào)警上限。
讀出數(shù)字值的實(shí)例
{
double dAlarmHigh;
//獲得報(bào)警上限 dAlarmHigh
= GetAlarmHigh(lpszPictureName,"Bar 1");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetAlarmHigh函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Bar1”是該對象的名稱。
1). 讀出報(bào)警上限和dAlarmHigh中的緩沖區(qū)。
2). 執(zhí)行處理返回值的自定義代碼。
2. double GetAlarmLow(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指出報(bào)警下限。
讀出數(shù)字值的實(shí)例
{
double dAlarmHigh;
//獲得報(bào)警上限 dAlarmHigh
= GetAlarmHigh(lpszPictureName,"Bar 1");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetAlarmHigh函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Bar1”是該對象的名稱。
3. BOOL GetCheckAlarmHigh(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指定是否監(jiān)控報(bào)警上限。
讀出布爾型屬性的實(shí)例
{
BOOL bmarker;
//獲得該標(biāo)記的狀態(tài) bmarker
= GetMarker(lpszPictureName,"Bar 1");
if(bmarker)
{
// 自定義代碼
// 標(biāo)記是否被激活
...
}
else
{
// 自定義代碼
// 標(biāo)記是否被取消激活
...
}
}
GetMarker函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Bar1”是該對象的名稱。
4. BOOL GetCheckLimitHigh4(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對象時(shí),它指定是否監(jiān)控上限值Reserve 4。
讀出布爾型屬性的實(shí)例
{
BOOL bmarker;
//獲得該標(biāo)記的狀態(tài) bmarker
= GetMarker(lpszPictureName,"Bar 1");
if(bmarker)
{
// 自定義代碼
// 標(biāo)記是否被激活
...
}
else
{
// 自定義代碼
// 標(biāo)記是否被取消激活
...
}
}
GetMarker函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Bar1”是該對象的名稱。
Link - 簡短描述
使用Link組中的函數(shù)可以創(chuàng)建或調(diào)用變量鏈接屬性。
1. BOOL GetLink(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName LPCTSTR lpszPropertyName, LPLINKINFO *pLink)函數(shù),指定對象屬性的當(dāng)前變量鏈接。
讀出變量鏈接的實(shí)例
{
LINKINFO linkinfo;
//獲得已鏈接的變量
GetLink(lpszPictureName,"Bar 1","Process",&linkinfo);
// linkinfo.szLinkName是變量名
// linkinfo.dwCycle是更新周期
// linkinfo.LinkType是連接的類型
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetLink函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Bar1”是該對象的名稱。
“Process”是鏈接到變量的屬性。
“&linkinfo”是結(jié)構(gòu)linkinfo的地址。
1). 用該變量鏈接上的信息填充傳送的linkinfo結(jié)構(gòu)。
2). 根據(jù)該函數(shù)的返回值執(zhí)行自定義代碼。
Miscs - 簡短描述
使用Miscs組中的函數(shù)可以修改或調(diào)用對象的屬性。
1. BOOL GetAdaptBorder(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)
函數(shù),對于靜態(tài)文本、I/O域、復(fù)選框和單選框,它指定域邊框是否將動(dòng)態(tài)適應(yīng)文本的大小。
讀出布爾型屬性的實(shí)例
{
BOOL bVisible;
//獲得可見性 bVisible
= GetVisible(lpszPictureName,"Graphic Object 1");
if(bVisible)
{
// 自定義代碼
// 該對象是否可見
...
}
else
{
// 自定義代碼
// 該對象是否不可見
...
}
}
GetVisible函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Graphic Object 1”是該對象的名稱。
2. BOOL GetAdaptPicture(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),對于畫面窗口,它指定畫面是否將適應(yīng)窗口的大小。
讀出布爾型屬性的實(shí)例
{
BOOL bVisible;
//獲得可見性 bVisible
= GetVisible(lpszPictureName,"Graphic Object 1");
if(bVisible)
{
// 自定義代碼
// 該對象是否可見
...
}
else
{
// 自定義代碼
// 該對象是否不可見
...
}
}
GetVisible函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Graphic Object 1”是該對象的名稱。
3. BOOL GetAdaptSize(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)
函數(shù),對于畫面窗口,它指定是否改變窗口。
讀出布爾型屬性的實(shí)例
{
BOOL bVisible;
//獲得可見性 bVisible
= GetVisible(lpszPictureName,"Graphic Object 1");
if(bVisible)
{
// 自定義代碼
// 該對象是否可見
...
}
else
{
// 自定義代碼
// 該對象是否不可見
...
}
}
GetVisible函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Graphic Object 1”是該對象的名稱。
4. BOOL GetAverage(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),對于棒圖對象,指定是否激活平均值計(jì)算。
讀出布爾型屬性的實(shí)例
{
BOOL bVisible;
//獲得可見性 bVisible
= GetVisible(lpszPictureName,"Graphic Object 1");
if(bVisible)
{
// 自定義代碼
// 該對象是否可見
...
}
else
{
// 自定義代碼
// 該對象是否不可見
...
}
}
GetVisible函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Graphic Object 1”是該對象的名稱。
5. BOOL GetCaption(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定畫面或應(yīng)用程序窗口是否有標(biāo)題。
讀出布爾型屬性的實(shí)例
{
BOOL bVisible;
//獲得可見性 bVisible
= GetVisible(lpszPictureName,"Graphic Object 1");
if(bVisible)
{
// 自定義代碼
// 該對象是否可見
...
}
else
{
// 自定義代碼
// 該對象是否不可見
...
}
}
GetVisible函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Graphic Object 1”是該對象的名稱。
6. BOOL GetLanguageSwitch(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用“文本列表”對象時(shí),它指定用一種還是多種語言組態(tài)文本列表。
讀出布爾型屬性的實(shí)例
{
BOOL bVisible;
//獲得可見性 bVisible
= GetVisible(lpszPictureName,"Graphic Object 1");
if(bVisible)
{
// 自定義代碼
// 該對象是否可見
...
}
else
{
// 自定義代碼
// 該對象是否不可見
...
}
}
GetVisible函數(shù)參數(shù):
“lpszPictureName”是在其中組態(tài)該對象的畫面的名稱。
“Graphic Object 1”是該對象的名稱。
SET啟動(dòng)
1. BOOL OpenHomePicture()函數(shù),
打開定義的啟動(dòng)畫面。
2. BOOL OpenNextPicture()函數(shù)
WinCC存儲(chǔ)用戶在運(yùn)行時(shí)打開的畫面的名稱以及打開畫面的順序。
在“畫面緩沖區(qū)大小”下面的計(jì)算機(jī)屬性標(biāo)簽控件“圖形運(yùn)行系統(tǒng)”中的WinCC資源管理器內(nèi),可以定義用此方式所能存儲(chǔ)的畫面名的最大數(shù)目。
OpenNextPicture函數(shù)打開由OpenPrevPicture函數(shù)打開的最后一個(gè)畫面。
3. BOOL OpenPrevPicture()函數(shù),WinCC存儲(chǔ)用戶在運(yùn)行時(shí)打開的畫面的名稱以及打開畫面的順序。
在“畫面緩沖區(qū)大小”下面的計(jì)算機(jī)屬性標(biāo)簽控件“圖形運(yùn)行系統(tǒng)”中的WinCC資源管理器內(nèi),可以定義用此方式所能存儲(chǔ)的畫面名的最大數(shù)目。
OpenPrevPicture函數(shù)打開當(dāng)前畫面的前一個(gè)畫面。
4. BOOL OpenStoredPicture()函數(shù),打開使用Store Picture函數(shù)存儲(chǔ)的畫面。
5. BOOL StorePicture()函數(shù),存儲(chǔ)當(dāng)前畫面;存儲(chǔ)后,使用OpenStoredPicture函數(shù)可以打開該畫面。
tag - 簡短描述
使用來自Tag組的函數(shù)可以設(shè)置或調(diào)用變量。
1. BOOL GetTagBitStateWait(Tag Tag_Name, PDWORD lp_dwstate)函數(shù),
建立數(shù)據(jù)類型“二進(jìn)制變量”的過程變量的數(shù)值。直接從PLC讀取該數(shù)值。 也返回變量的狀態(tài)。
讀出二進(jìn)制類型變量的實(shí)例
{
DWORD dwstate;
BOOL bValue;
dwstate = 0xFFFFFFFF;
//獲得該變量值
//dwstate是變量狀態(tài) bValue
= GetTagBitStateWait("gs_tag_bit",&dwstate);
//創(chuàng)建包含該變量值的字符串
if (bValue)
{
// 自定義代碼
// 該變量的數(shù)值是否是true
...
}
else
{
// 自定義代碼
// 該變量的數(shù)值是否是false
...
}
}
GetTagBitStateWait函數(shù)參數(shù):
“gs_tag_bit”是該變量的名稱。
“&dwstate”是應(yīng)在其中存儲(chǔ)變量狀態(tài)的變量地址。
1). 讀出該變量值以及bstate中的緩沖區(qū)。 該函數(shù)將變量狀態(tài)存儲(chǔ)在dwstate中。
2). 根據(jù)該函數(shù)的返回值執(zhí)行自定義代碼。
WinCC簡短描述
使用來自WinCC組的函數(shù)可以在運(yùn)行系統(tǒng)中定義各種設(shè)置。
使用System子組中的函數(shù)可以操作WinCC運(yùn)行系統(tǒng)。
1. BOOL DeactivateRTProject()函數(shù),取消激活該項(xiàng)目。
取消激活WinCC運(yùn)行系統(tǒng)的實(shí)例
{
//取消激活運(yùn)行系統(tǒng)
DeactivateRTProject ();
}
該函數(shù)取消激活WinCC運(yùn)行系統(tǒng)。
2. BOOL ExitWinCC()函數(shù),終止WinCC
退出WinCC的實(shí)例
{
//退出wincc
ExitWinCC ();
}
該函數(shù)終止WinCC。
3. DWORD GetLanguage()函數(shù),建立當(dāng)前運(yùn)行系統(tǒng)語言。
讀出當(dāng)前運(yùn)行系統(tǒng)語言的實(shí)例
{
DWORD rt_language;
//獲得當(dāng)前語言 rt
_language = GetLanguage ();
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
1). 讀出當(dāng)前運(yùn)行系統(tǒng)語言并緩沖存儲(chǔ)在rt_language中。
2). 執(zhí)行處理返回值的自定義代碼。
4. DWORD* InquireLanguage(DWORD* dwCount)函數(shù),建立為運(yùn)行系統(tǒng)而在文本庫中組態(tài)的全部語言。使用dwCount定義建立的語言數(shù)量應(yīng)該存儲(chǔ)在哪里。
讀出已組態(tài)的運(yùn)行系統(tǒng)語言
{
DWORD count;
DWORD* language;
int i;
//計(jì)算已安裝的語言
language = InquireLanguage(&count);
printf("##################### INQUIRE LANGUAGE ####################");
//打印輸出語言的計(jì)數(shù)
printf ( "\r\nCount Languages=%d\r\n", count );
//打印輸出安裝了哪些語言
for (i=1;i<=count; i++)
{
printf ("\r\n%d.language=%x", i,*language++);
}
}
1). 建立為該運(yùn)行系統(tǒng)組態(tài)的語言。這些語言ID緩沖存儲(chǔ)在語言中。語言的數(shù)量緩沖存儲(chǔ)在計(jì)數(shù)中。
2). 發(fā)出已建立的語言的數(shù)量。
3).顯示所有已建立的語言ID。
5. BOOL SetLanguage(DWORD dwLocaleID)函數(shù),改變運(yùn)行系統(tǒng)中的語言設(shè)置。
定義運(yùn)行系統(tǒng)語言的實(shí)例
{
//德語
SetLanguage(0x0407);
}
該運(yùn)行系統(tǒng)語言被設(shè)置為德語。
6. void FillDiagnoseInTags(BOOL bfill)函數(shù),激活或取消激活在變量中存儲(chǔ)診斷信息。由于填充變量表示附加系統(tǒng)負(fù)載,只應(yīng)為了診斷信息才激活它。
7. void GetServerTagPrefix(char** ppszServerPrefix, char** ppszTagPrefix, char** ppszWindowPrefix)函數(shù),為了從分布式系統(tǒng)中的多客戶機(jī)訪問相關(guān)服務(wù)器中的變量,必須通過添加服務(wù)器前綴和變量前綴來擴(kuò)展變量名。如果使用函數(shù)GetTagxx或SetTagxx訪問變量,該動(dòng)作控件提供必要的擴(kuò)展名。如果WinCC API函數(shù)被用來獲得訪問,必須由用戶擴(kuò)展變量名。在這種情況下,GetServerTagPrefix函數(shù)提供必要的前綴。
分別為服務(wù)器前綴、變量前綴和窗口前綴返回一個(gè)“字符”類型的指針。
用戶既不修改(不包括strcat)也不釋放存儲(chǔ)器。
讀出服務(wù)器前綴的實(shí)例
{
char* pszServerPrefix;
char* pszTagPrefix;
char* pszWindowPrefix;
//獲得服務(wù)器前綴和變量前綴 GetServerTagPrefix
(&pszServerPrefix, &pszTagPrefix, &pszWindowPrefix);
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
GetServerTagPrefix函數(shù)參數(shù):
“pszServerPrefix”是在其中寫入服務(wù)器前綴的變量。
“pszTagPrefix”是在其中寫入變量前綴的變量。
“pszWindowPrefix”是在其中寫入窗口前綴的變量。
1). 讀出服務(wù)器前綴、變量前綴和窗口前綴。
2). 返回的服務(wù)器前綴緩沖存儲(chǔ)在pszServerPrefix中。
3). 返回的變量前綴緩沖存儲(chǔ)在pszTagPrefix中。
4). 返回的窗口前綴緩沖存儲(chǔ)在pszWindowPrefix中。
5). 執(zhí)行處理返回值的自定義代碼。
讀出服務(wù)器前綴的實(shí)例
{
char* pszServerPrefix;
char* pszTagPrefix;
char* pszWindowPrefix;
int nServerPrefixLen = 0;
int nTagPrefixLen = 0;
int nTagLen = 0;
char myTagName[MAX_DM_VAR_NAME+1];
//初始化返回值
memset(myTagName,0,MAX_DM_VAR_NAME + 1);
//獲得服務(wù)器前綴、變量前綴和窗口前綴 GetServerTagPrefix
(&pszServerPrefix, &pszTagPrefix, &pszWindowPrefix);
//是否存在服務(wù)器前綴 if (pszServerPrefix)
{
//獲得該字符串的長度
nServerPrefixLen = strlen(pszServerPrefix);
}
else
{
printf("No server prefix was returned.");
return;
}
//是否存在變量前綴
if (pszTagPrefix)
{
//獲得該字符串的長度
nTagPrefixLen = strlen(pszTagPrefix);
}
//獲得該變量的長度
nTagLen = strlen("TagName");
//檢查長度
//ServerPrefix+TagPrefix+VarName + the double points < MAX_DM_VAR_NAME
if (nServerPrefixLen + nTagPrefixLen + nTagLen+2 < MAX_DM_VAR_NAME)
{
sprintf(myTagName,"%s::%s%s",pszServerPrefix,pszTagPrefix,"TagName");
//自定義代碼
//在那里用戶可以使用返回值做某事
...
}
else
{
printf("The resulting string is too long.");
return;
}
}
1). 初始化myTagName變量。
2). 讀出服務(wù)器前綴、變量前綴和窗口前綴。
3). 如果未返回服務(wù)器前綴,發(fā)出文本,并且該函數(shù)被終止。
4). 如果返回服務(wù)器前綴,建立其長度并將其存儲(chǔ)在nServerPrefixLen中。
5). 如果返回變量前綴,建立其長度并將其存儲(chǔ)在nTagPrefixLen中。
6). 確定變量名的長度和nVarLen中的緩沖區(qū)。
7). 如果變量名的長度太長,發(fā)出文本,并且該函數(shù)被終止。
8). 如果變量名的長度不太長,組成多客戶機(jī)環(huán)境要求的變量名。
9). 執(zhí)行處理返回值的自定義代碼。
8. void TraceText(DWORD dwTraceLevel, char* pszFormat, <Parameter>)函數(shù),達(dá)到定義的診斷標(biāo)準(zhǔn)時(shí),在<參數(shù)>中指定的數(shù)值被記錄在APDiag內(nèi)。
9. void TraceTime(DWORD dwTraceLevel, char* pszFormat, <Parameter>)函數(shù),達(dá)到定義的診斷標(biāo)準(zhǔn)時(shí),在<參數(shù)>中指定的數(shù)值被記錄在APDiag內(nèi)。
此外,為了允許性能測評,發(fā)布從AP開始診斷的時(shí)間(毫秒)。
聯(lián)系客服