在實際的項目應用中,某些關鍵數據的輸入需要提示操作人員確認無誤后才能進行。如下圖所示:
圖1
當在輸入/輸出域中輸入數值99并回車后,數據并不立即輸入到變量里,而是彈出一個確認的信息窗口。這時候如果選擇“是”那么數據將輸入到相應的變量,如果選擇“否”相應的變量會保持原來的值不變。下面就介紹如何使用WinCC的輸入/輸出域實現這種功能。
1. 前提條件
創建兩個數據類型相同的變量 DisplayValue和TempValue,其中DisplayValue是實際需要控制的變量,TempValue作為臨時變量使用。如下圖所示:
圖2
2. 輸入/輸出域的屬性設置
在畫面中新建一個輸入/輸出域,打開屬性對話框。選擇屬性?輸出/輸入?輸出值,在動態部分點擊鼠標右鍵,如下圖所示:
圖3
打開動態對話框。選擇需要控制的變量(本例中變量為:DisplayValue),并配置數據類型。如下圖所示:
圖4
3. 輸入/輸出域的事件設置
3.1更改動作設置
選擇同一個輸入/輸出域,打開屬性對話框。選擇事件?屬性主題?輸出/輸入?輸入值,在更改動作部分點擊鼠標右鍵,如下圖所示:
圖5
打開直接連接對話框。來源部分保持默認設置,目標部分選擇直接連接到臨時變量(本例中為:TempValue )。如下圖所示:
圖6
3.2鍵盤釋放動作設置
選擇同一個輸入/輸出域,打開屬性對話框。選擇事件?鍵盤?釋放,在動作部分點擊鼠標右鍵,如下圖所示:
圖7
打開C動作編輯器。編寫用于判斷操作人員是否輸入完畢并按下回車的代碼。如下圖所示:
圖8
詳細代碼如下:
int TempValue=GetTagWord("TempValue");
char szBuffer[20];
sprintf( szBuffer,"Input number:%d",TempValue);
if ( nChar==13 )//if press enter
{
int xRet = MessageBox(NULL,szBuffer,"確認窗口",MB_YESNO|MB_ICONQUESTION|MB_SYSTEMMODAL);//message
if ( xRet == IDYES )//confirm operate
{
SetTagWord("DisplayValue",TempValue);// set data
}
}
當系統運行后,一旦在該輸入/輸出域中檢測到回車信號,系統就會彈出如圖1所示的確認窗口。
- 西門子博途WINCC公共彈窗 2024-11-22
- 西門子WinCC冗余項目使用 2024-11-22
- 西門子S7-1500作為智能設備共享功能 2024-11-22
- 西門子PLC如何通過編程判斷程序是否發生過改動 2024-11-22
- 西門子精簡面板和精智面板與S7-1200/1500PLC時間同步功能 2024-11-22
- 西門子TIA博途SCL編程學習7_計算N天后的日期 2024-11-22
- 西門子TIA博途S7-1200/1500學習7間接尋址指令PEEK的使用 2024-11-22
- 西門子TIA博途SCL編程學習2 2024-11-22
- 西門子PLC用TIA博途SCL語言寫的一個產生隨機實數的指令塊 2024-11-22
- 自動語音播報西門子WinCC報警消息 2024-11-22
- 西門子WinCC V7.5典型架構及選型指南 2024-11-22
- 通過Web Service與西門子WinCC交互數據 2024-11-22
- 西門子WinCC中的“地圖+數據” 2024-11-22
- 西門子WinCC中的三檔轉換 2024-11-22
- 西門子博途WinCC專業版C/S架構入門指南 2024-11-22
聯系方式
- 電 話:13510737515
- 聯系人:董海波
- 手 機:13185520415
- 微 信:13185520415