關(guān)于Wincc的C函數(shù)(6)二、內(nèi)部函數(shù)
內(nèi)部函數(shù)用來(lái)畫(huà)圖形對(duì)象和使歸檔動(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ù),通過(guò)SysMalloc函數(shù)釋放保留的存儲(chǔ)器區(qū)域。 參數(shù)lpFree,指向通過(guò)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ù)可用來(lái)過(guò)早釋放保留的存儲(chǔ)器空間。 參數(shù)size,按字節(jié)計(jì)算的存儲(chǔ)器區(qū)域的大小。 3. c_bib函數(shù)組c_bib包含來(lái)自C庫(kù)的C函數(shù) Graphics - 簡(jiǎn)短描述 使用Graphics組中的函數(shù)可以修改或調(diào)用WinCC對(duì)象的圖形屬性。 Axes - 簡(jiǎn)短描述 Axes組中的函數(shù)僅用于棒圖對(duì)象。 該函數(shù)可用來(lái)修改或調(diào)用各種棒圖對(duì)象屬性。 1. BOOL GetAlignment(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對(duì)象時(shí),它指明文本在棒圖的左面還是右面。 讀出棒圖對(duì)象的布爾型屬性的實(shí)例 { BOOL bscaling; //獲得標(biāo)尺狀態(tài) bscaling = GetScaling(lpszPictureName,"Bar1"); if (bscaling) { // 自定義代碼 // 棒圖對(duì)象有一個(gè)附加的標(biāo)尺 ... } else { // 自定義代碼 // 棒圖對(duì)象沒(méi)有附加的刻度 ... } } GetScaling函數(shù)參數(shù): “l(fā)pszPictureName”是在其中組態(tài)該對(duì)象的畫(huà)面的名稱(chēng)。 “Bar1”是該對(duì)象的名稱(chēng)。 1). 讀出棒圖刻度是否可見(jiàn)以及bscaling中的緩沖區(qū)。 2). 根據(jù)該函數(shù)的返回值執(zhí)行自定義代碼。 2. double GetAxisSection(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對(duì)象時(shí),它指定兩個(gè)鄰近軸標(biāo)簽之間的數(shù)值差。 3. BOOL GetExponent(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對(duì)象時(shí),它指定軸標(biāo)簽對(duì)應(yīng)于小數(shù)或指數(shù)形式。 讀出棒圖對(duì)象的布爾型屬性的實(shí)例 {BOOL bscaling; //獲得標(biāo)尺狀態(tài) bscaling = GetScaling(lpszPictureName,"Bar1"); if (bscaling) { // 自定義代碼 // 棒圖對(duì)象有一個(gè)附加的標(biāo)尺 ... } else { // 自定義代碼 // 棒圖對(duì)象沒(méi)有附加的刻度 ... } } GetScaling函數(shù)參數(shù): “l(fā)pszPictureName”是在其中組態(tài)該對(duì)象的畫(huà)面的名稱(chēng)。 “Bar1”是該對(duì)象的名稱(chēng)。 1). 讀出棒圖刻度是否可見(jiàn)以及bscaling中的緩沖區(qū)。 2). 根據(jù)該函數(shù)的返回值執(zhí)行自定義代碼。 4. long int GetLeftComma(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對(duì)象時(shí),它指定軸標(biāo)簽中的整數(shù)數(shù)量。 參數(shù)lpszPictureName 畫(huà)面名lpszObjectName 對(duì)象名 返回值,軸標(biāo)簽中的整數(shù)數(shù)量 5. BOOL GetLongStrokesBold(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對(duì)象時(shí),它指定以粗體還是常規(guī)形式顯示標(biāo)尺上的主要刻度線。 讀出棒圖對(duì)象的布爾型屬性的實(shí)例 { BOOL bscaling; //獲得標(biāo)尺狀態(tài) bscaling = GetScaling(lpszPictureName,"Bar1"); if (bscaling) { // 自定義代碼 // 棒圖對(duì)象有一個(gè)附加的標(biāo)尺 ... } else { // 自定義代碼 // 棒圖對(duì)象沒(méi)有附加的刻度 ... } } GetScaling函數(shù)參數(shù): “l(fā)pszPictureName”是在其中組態(tài)該對(duì)象的畫(huà)面的名稱(chēng)。 “Bar1”是該對(duì)象的名稱(chēng)。 1). 讀出棒圖刻度是否可見(jiàn)以及bscaling中的緩沖區(qū)。 2). 根據(jù)該函數(shù)的返回值執(zhí)行自定義代碼。 6. long int GetLongStrokesSize(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對(duì)象時(shí),它指定主要刻度線的長(zhǎng)度。 7. long int GetLongStrokesTextEach(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對(duì)象時(shí),它指定主要刻度線標(biāo)簽的間隔長(zhǎng)度。 8. long int GetRightComma(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對(duì)象時(shí),它指定坐標(biāo)軸標(biāo)簽中的小數(shù)位數(shù)。 9. long int GetScaleTicks(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對(duì)象時(shí),它將標(biāo)尺單位定義為標(biāo)尺分段的數(shù)量。一個(gè)標(biāo)尺分段對(duì)應(yīng)于兩條主要刻度線之間的范圍 10. BOOL GetScaling(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖時(shí),它指定激活還是取消激活標(biāo)尺。 讀出棒圖對(duì)象的布爾型屬性的實(shí)例 { BOOL bscaling; //獲得標(biāo)尺狀態(tài) bscaling = GetScaling(lpszPictureName,"Bar1"); if (bscaling) { // 自定義代碼 // 棒圖對(duì)象有一個(gè)附加的標(biāo)尺 ... } else { // 自定義代碼 // 棒圖對(duì)象沒(méi)有附加的刻度 ... } } GetScaling函數(shù)參數(shù): “l(fā)pszPictureName”是在其中組態(tài)該對(duì)象的畫(huà)面的名稱(chēng)。 “Bar1”是該對(duì)象的名稱(chēng)。 1). 讀出棒圖刻度是否可見(jiàn)以及bscaling中的緩沖區(qū)。 2). 根據(jù)該函數(shù)的返回值執(zhí)行自定義代碼。 11. long int GetScalingType(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對(duì)象時(shí),它指定棒圖標(biāo)尺的類(lèi)型。 Color - 簡(jiǎn)短描述 使用Color組中的函數(shù)可以修改或調(diào)用對(duì)象的顏色屬性。 1. long int GetBackColor(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定對(duì)象的背景色為數(shù)字值。 讀出顏色值的實(shí)例 { long int bk_color; // linkinfo.szLinkName是變量名。 // linkinfo.dwCycle是更新周期 // linkinfo.LinkType是該連接的類(lèi)型 //自定義代碼 //在那里用戶可以使用返回值做某事 ... } GetBackColor函數(shù)參數(shù): “l(fā)pszPictureName”是在其中組態(tài)該對(duì)象的畫(huà)面的名稱(chēng)。 “Static Text1”是該對(duì)象的名稱(chēng)。 1). 讀出當(dāng)前背景色和bk_color中的緩沖區(qū)。 2). 執(zhí)行處理返回值的自定義代碼。 2. long int GetBackColor2(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對(duì)象時(shí),它指定棒圖的顏色為數(shù)字值。 讀出顏色值的實(shí)例 { long int bk_color; // linkinfo.szLinkName是變量名。 // linkinfo.dwCycle是更新周期 // linkinfo.LinkType是該連接的類(lèi)型 //自定義代碼 //在那里用戶可以使用返回值做某事 ... } GetBackColor函數(shù)參數(shù): “l(fā)pszPictureName”是在其中組態(tài)該對(duì)象的畫(huà)面的名稱(chēng)。 “Static Text1”是該對(duì)象的名稱(chēng)。 3. long int GetBackColor3(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),使用棒圖對(duì)象時(shí),它指定棒圖的背景色為數(shù)字值。 讀出顏色值的實(shí)例 { long int bk_color; // linkinfo.szLinkName是變量名。 // linkinfo.dwCycle是更新周期 // linkinfo.LinkType是該連接的類(lèi)型 //自定義代碼 //在那里用戶可以使用返回值做某事 ... } GetBackColor函數(shù)參數(shù): “l(fā)pszPictureName”是在其中組態(tài)該對(duì)象的畫(huà)面的名稱(chēng)。 “Static Text1”是該對(duì)象的名稱(chēng)。 Fill - 簡(jiǎn)短描述 Fill組中的函數(shù)控制對(duì)象的動(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ù): “l(fā)pszPictureName”是在其中組態(tài)該對(duì)象的畫(huà)面的名稱(chēng)。 “Rectangle1”是該對(duì)象的名稱(chēng)。 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; //獲得該對(duì)象的實(shí)際填充索引 filling _index = GetFillingIndex(lpszPictureName," Rectangle 1"); //自定義代碼 //在那里用戶可以使用返回值做某事 ... } GetFillingIndex函數(shù)參數(shù): “l(fā)pszPictureName”是在其中組態(tài)該對(duì)象的畫(huà)面的名稱(chēng)。 “Rectangle1”是該對(duì)象的名稱(chēng)。 1). 讀出該對(duì)象的當(dāng)前填充索引以及filling_index中的緩沖區(qū)。 2). 執(zhí)行處理返回值的自定義代碼。 Flash - 簡(jiǎn)短描述 使用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ù): “l(fā)pszPictureName”是在其中組態(tài)該對(duì)象的畫(huà)面的名稱(chēng)。 “Group 1”是該對(duì)象的名稱(chēng)。 1). 讀出該對(duì)象的開(kāi)狀態(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ù): “l(fā)pszPictureName”是在其中組態(tài)該對(duì)象的畫(huà)面的名稱(chēng)。 “Group 1”是該對(duì)象的名稱(chēng)。 1). 讀出該對(duì)象的開(kāi)狀態(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ù): “l(fā)pszPictureName”是在其中組態(tài)該對(duì)象的畫(huà)面的名稱(chēng)。 “Group 1”是該對(duì)象的名稱(chēng)。 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ù): “l(fā)pszPictureName”是在其中組態(tài)該對(duì)象的畫(huà)面的名稱(chēng)。 “Group 1”是該對(duì)象的名稱(chēng)。 5. BOOL GetFlashBackColor(LPCTSTR lpszPictureName, LPCTSTR lpszObjectName)函數(shù),指定是否激活背景閃爍。 讀出“閃爍背景激活”屬性的實(shí)例 { BOOL bflash_col; //了解閃爍是開(kāi)還是關(guān) bflash _col = GetFlashBackColor(lpszPictureName,"Group 1"); if(bflash_col) { // 自定義代碼 // 閃爍是否被激活 ... } else { // 自定義代碼 // 閃爍是否被取消激活 ... } } GetFlashBackColor函數(shù)參數(shù): “l(fā)pszPictureName”是在其中組態(tài)該對(duì)象的畫(huà)面的名稱(chēng)。 “Group 1”是該對(duì)象的名稱(chēng)。 1). 讀出背景色閃爍是否被激活以及bflash_col中的緩沖區(qū)。 2). 根據(jù)該函數(shù)的返回值執(zhí)行自定義代碼。 Focus - 簡(jiǎn)短描述 使用Focus組中的函數(shù),可以設(shè)置焦點(diǎn)或輪詢哪個(gè)對(duì)象有焦點(diǎn)。 1. char* Get_Focus()函數(shù),指定當(dāng)前或最后聚焦的對(duì)象的名稱(chēng)。 要求當(dāng)前在哪一個(gè)對(duì)象上設(shè)置焦點(diǎn)的實(shí)例 { char* pszValue = NULL; char szValue[_MAX_PATH+1]; //獲得具有焦點(diǎn)的對(duì)象 pszValue = Get_Focus(); //復(fù)制字符串 if (pszValue != NULL) { strncpy(szValue,pszValue,_MAX_PATH); } //自定義代碼 //在那里用戶可以使用返回值做某事 ... } 1). 讀出在其上設(shè)置焦點(diǎn)的對(duì)象以及pszValue中的緩沖區(qū)。 2). 如果返回有效數(shù)值,將該函數(shù)的返回值存儲(chǔ)在本地字符串szValue中。最多存儲(chǔ)_MAX_PATH個(gè)字符。 3). 執(zhí)行處理返回值的自定義代碼。 |
|
來(lái)自: sncun > 《工業(yè)控制》