C通過返回值改變屬性

C通過返回值改變屬性

ID:40527488

大小:45.50 KB

頁數(shù):6頁

時間:2019-08-04

C通過返回值改變屬性_第1頁
C通過返回值改變屬性_第2頁
C通過返回值改變屬性_第3頁
C通過返回值改變屬性_第4頁
C通過返回值改變屬性_第5頁
資源描述:

《C通過返回值改變屬性》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在教育資源-天天文庫。

1、通過返回值改變屬性對象的屬性值可以通過返回值來設(shè)置,這與通過明確設(shè)置檢索如SetBackColor和SetProperty相比較,系統(tǒng)利用率將顯著減少。以高系統(tǒng)利用率改變屬性的實例Circle1處的動作,可見,觸發(fā)變量"toll",2秒:if(GetTagWord("toll")>20){SetBackColor(lpszPictureName,lpszObjectName,CO_RED);//背景色SetLeft(lpszPictureName,lpszObjectName,199);//位置XS

2、etTop(lpszPictureName,lpszObjectName,199);//位置Y}else{SetBackColor(lpszPictureName,lpszObjectName,CO_GRAY);//背景色SetLeft(lpszPictureName,lpszObjectName,99);//位置XSetTop(lpszPictureName,lpszObjectName,99);//位置Y}returnTRUE;//可見功能相同,以低系統(tǒng)利用率改變屬性的實例Circle1處的動作

3、,背景色,觸發(fā)變量"toll",2秒:if(GetTagWord("toll")>20)returnCO_RED;elsereturnCO_GRAY;Circle1處的動作,位置X,觸發(fā)變量"toll",2秒:if(GetTagWord("toll")>20)return199;elsereturn99;Circle1處的動作,位置Y,觸發(fā)變量"toll",2秒:if(GetTagWord("toll")>20)return199;elsereturn99;技術(shù)背景:在第一種情況中,在動作內(nèi)檢索se

4、t函數(shù),這些函數(shù)將引發(fā)到PDLRT的任務(wù)切換。PDLRT建立畫面中的必需部分。之后,設(shè)置下一個set檢索。在第二個實例中,用戶必須執(zhí)行3個動作,但這是一種非??焖俚姆椒?。腳本控制的動作執(zhí)行后,將收集全部結(jié)果并馬上將結(jié)果傳送給PDLRT。這僅涉及到一次任務(wù)切換?,F(xiàn)在,PDLRT可以對畫面設(shè)置進(jìn)行優(yōu)化,因為所有的值均可利用。這僅涉及到一次畫面設(shè)置。如果需要執(zhí)行復(fù)雜的計算或操作,以便檢查例如顏色更改,則可以設(shè)置項目函數(shù),該函數(shù)會執(zhí)行計算并將其填充到C結(jié)構(gòu)中。其它動作可從該C結(jié)構(gòu)中讀取,然后重新傳送返回值。

5、GetTag/SetTag或GetTagWait/SetTagWait要讀取和描述過程變量,缺省情況下使用函數(shù)GetTag和SetTag。GetTag還是GetTagWait?通過GetTag檢索的過程變量均放置在圖像中。因為圖象的更新與讀取是兩個分離的過程,所以,GetTag調(diào)用將不受連接的直接影響。這樣,可比GetTagWait檢索執(zhí)行得更快、更不受約束。使用GetTagWait,已請求的過程變量并未在圖像中接收。GetTagWait檢索可明確地讀取AS中的數(shù)值。這始終包含通過連接和AS反應(yīng)時間

6、的來回路徑。在運行時,C動作的處理鎖定而且不能預(yù)先估計檢索需要持續(xù)多久。如果正在讀取多個變量,時間將增加。如果快速寫/讀過程需要同步,那么需要檢索GetTagWait,要避免數(shù)值從AS確切讀取或在映像中注冊。在循環(huán)C動作中應(yīng)避免GetTagWait檢索,因為它是引起性能問題的主要原因。SetTag還是SetTagWait?SetTag檢索將發(fā)出一個寫作業(yè),而不需等待AS的確認(rèn)。SetTagWait檢索將發(fā)出一個寫作業(yè),且需要等待AS的確認(rèn)。這始終包含通過連接和AS反應(yīng)時間的來回路徑。在運行時,C動作

7、的處理鎖定而且不能預(yù)先估計檢索需要持續(xù)多久。如果正在寫入多個變量,時間將增加。SetTagWait檢索將用于確保在對C動作進(jìn)行進(jìn)一步的處理之前,寫入數(shù)值。在循環(huán)C動作中,應(yīng)避免SetTagWait調(diào)用。説明GetTag與GetTagWait之間的差別也適用于內(nèi)部變量。然而,在這種情況下的差別將不是十分嚴(yán)重,因為沒有出現(xiàn)任何連接。內(nèi)部變量也需要使用相應(yīng)的wait函數(shù),以便對快速寫/讀過程進(jìn)行同步。有關(guān)詳細(xì)信息,請參見相應(yīng)的函數(shù)描述。用變量觸發(fā)器代替時間觸發(fā)器使用圖形編輯器,動態(tài)對話框中動作的缺省設(shè)置是

8、變量觸發(fā)器,而C動作的缺省設(shè)置則是時間為2秒的標(biāo)準(zhǔn)觸發(fā)器。帶有缺省設(shè)置的動態(tài)對話框帶有缺省設(shè)置的C動作使用標(biāo)準(zhǔn)觸發(fā)器可導(dǎo)致較高的系統(tǒng)利用率。因此,推薦使用下列組態(tài):將時間觸發(fā)器更改為變量觸發(fā)器為了在C動作中組態(tài)變量觸發(fā)器,可按下述方法執(zhí)行:?使用此按鈕打開"改變觸發(fā)器"窗口。?選擇"觸發(fā)器"作為事件。?用于在動作中進(jìn)行讀取的全部變量均應(yīng)在此處指定。?此外,對于標(biāo)準(zhǔn)周期,可設(shè)置為1秒或2秒。這可通過雙擊所要改變的標(biāo)準(zhǔn)周期來完成(缺省值為2秒)。在"更新"窗口中選擇所期望

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負(fù)責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。