崑崙組態的動畫構件(八-4)

十二、旋轉儀表

1、功能概述

旋轉儀表構件是模擬旋轉式指標儀表的一種動畫圖形,用其顯示所連線的浮點數變數的值。旋轉儀表構件的指標隨變數值的變化而不斷改變位置,指標所指向的刻度值即為所連線的變數的當前值。

2、組態配置

雙擊旋轉儀表構件,彈出“旋轉儀表屬性設定”對話方塊,旋轉儀表的屬性主要包括基本屬性,刻度與標註屬性,操作屬性和可見度屬性四個部分。

標準的旋轉儀表構件本身由主劃線,次劃線,圓邊,指標,扇形,背景圖,標註,軸心,警示色環9部分組成,如圖8。12-1。

崑崙組態的動畫構件(八-4)

圖8。12-1旋轉儀表組成

(1)基本屬性

介面屬性頁介面如圖8。12-2。

崑崙組態的動畫構件(八-4)

圖8。12-2基本屬性

l 圓邊顏色:配置圓邊的顏色,可配置沒有填充,即不繪製

l 圓邊線型:配置圓邊的線型

l 扇形顏色:配置扇形的顏色,可配置沒有填充,即不繪製

l 指標樣式:可選擇線型和四邊形兩種

l 指標顏色:可分別配置軸心和指標的填充顏色,均可配置沒有填充,即不繪製

l 指標位置:可透過配置指標的邊距,寬度,以及偏移長度來確定指標的位置,邊距是指標到矩形繪製區域的內切橢圓的距離,偏移長度是指偏移軸心的距離,可根據實際情況調整這三個引數來確定指標的位置和大小

l 背景圖:選擇之後可以新增背景圖片,支援bmp,jpg,png,svg,ico五種格式

l X偏移:點陣圖中心座標的X座標減去旋轉儀表中心座標的X座標的值

l Y偏移:點陣圖中心座標的Y座標減去旋轉儀表中心座標的Y座標的值

(2)刻度與標註屬性

刻度與標註屬性介面如圖8。12-3。

崑崙組態的動畫構件(八-4)

圖8。12-3刻度與標註屬性

l 主劃線:配置主劃線的數目,顏色,長,寬

l 次劃線:配置次劃線的數目,顏色,長,寬

l 標註顏色:配置標註文字的顏色

l 標註字型:配置標註的字型,字形,字號

l 標註間隔:配置標註的間隔

l 小數位數:配置標註顯示浮點數時,小數顯示的位數

l 標註顯示:可以選擇標註顯示在圓內,圓外,不顯示

(3)操作屬性

操作屬性介面如圖8。12-4。

崑崙組態的動畫構件(八-4)

圖8。12-4操作屬性

l 表示式:旋轉儀表構件所對應的浮點數變數,變數的值和指標的位置成一一對應的關係

l 起點位置:指標偏轉角度範圍的確定,可基於起點位置逆時針和順時針角度設定來確定,即最大角度=逆時針角度+順時針角度,可選擇12點,3點,6點,9點,分別對應90度,度,270度,180度,可根據實際情況選擇不同的起點位置

l 偏移範圍:偏移範圍是基於起點位置設定指標的偏轉角度範圍,同時可以設定逆時針角度和順時針角度的資料值,即邊界值

l 是否顯示:選擇後,才可以正常繪製警示色環

l 警示色環大小:可設定警示色環的寬度和邊距

l 警示色環界限:這裡的目的是將色環分為三個級別,分別表示正常、提示和警告。一般而言,[最小值,提示值]區間為正常色環,[提示值,警告值]區間為提示色環,[警告值,最大值]為警告色環

l 警示色環顏色:可以分別設定三個級別的顏色

(4)可見度屬性

可見度是指旋轉儀表在系統執行中是否可見,是由指定的表示式的值決定,可見度屬性介面如圖8。12-5。

崑崙組態的動畫構件(八-4)

圖8。12-5可見度屬性

表示式:本項中可以輸入一個表示式,用表示式的值來控制構件的可見度。當表示式為空時,預設為真(非零)。可使用右側的問號(“?”)按鈕查詢並設定所需的表示式

當表示式非零時:本項指定表示式的值與構件可見度相對應

3、構件屬性

構件屬性參考8。2節。

4、構件事件

構件事件參考8。2節。

十三、實時曲線

1、功能概述

實時曲線構件是用曲線顯示一個或多個變數數值的動畫圖形,像記錄儀一樣實時記錄變數值的變化情況。實時曲線構件可以用絕對時間為橫軸標度,此時,構件顯示的是變數的值與時間的函式關係。實時曲線構件也可以使用相對時鐘為橫軸標度,此時,須指定一個表示式來表示相對時鐘,構件顯示的是變數的值相對於此表示式值的函式關係,從而實現記錄一個變數相對另一個變數的變化曲線。可支援6條曲線,每條曲線最多300個數據點。

2、組態配置

組態時用滑鼠雙擊實時曲線構件,彈出構件的屬性設定對話方塊。本構件包括基本屬性、標註屬性、畫筆屬性和可見度屬性四個屬性頁。

(1)基本屬性

基本屬性屬性頁如圖8。13-1所示。

崑崙組態的動畫構件(八-4)

圖8。13-1基本屬性

l 背景網格:設定座標網格的數目、顏色、線型。

l 背景顏色:設定曲線的背景顏色(含透明色)。

l 邊線顏色:設定曲線視窗的邊線顏色。

l 邊線線型:設定曲線視窗的邊線線型。

l 曲線型別:

“絕對時鐘趨勢曲線”用系統時間作為橫座標的標度,顯示變數值隨時間的變化曲線;

“相對時鐘趨勢曲線”用指定的表示式作為橫座標的標度,顯示一個變數相對於另一個變數的變化曲線。

l 不顯示網格:選中此複選框,在構件的曲線視窗中不顯示座標網格。

(2)標註屬性

標註屬性屬性頁如圖8。13-2和圖8。13-3。

崑崙組態的動畫構件(八-4)

圖8。13-2絕對時鐘標註屬性

崑崙組態的動畫構件(八-4)

圖8。13-3相對時鐘標註屬性

l X軸標註:設定X軸標註文字的顏色、標註間隔、字型和X軸的長度。

1)當曲線的型別為“絕對時鐘趨勢曲線”時,需要指定時間格式、時間單位。X軸的長度是以指定的時間單位為單位的;

2)當曲線的型別為“相對時鐘趨勢曲線”時,指定X軸標註的小數位數和X軸的最小值(建議“相對時鐘趨勢曲線”表示式初值大於最小值小於最大值,否則X軸座標會經過複雜的計算,將導致顯示不可控)。

3)選中“不顯示X軸座標標註”複選框,將不顯示X軸的標註文字。

l Y軸標註:設定Y軸的標註顏色、標註間隔、小數位數和Y軸座標的最大、最小值以及標註字型。選中“不顯示Y軸座標標註”複選框,將不顯示Y軸的標註文字。

l 鎖定X軸的起始座標:只有當選擇“絕對時鐘趨勢曲線”,並且將時間單位選取為“小時”,此項才可以被選中,當選中後,X軸的起始時間將定在所填寫的時間位置,取值範圍[0,23]。

(3)畫筆屬性

畫筆屬性屬性頁如圖8。13-4所示。

崑崙組態的動畫構件(八-4)

圖8。13-4 畫筆屬性

畫筆對應的表示式和屬性:一條曲線相當於一支畫筆,一個實時曲線構件最多可同時顯示6條曲線。除需要設定每條曲線的顏色和線型以外,還需要設定曲線對應的表示式,該表示式的實時值將作為曲線的Y座標值。可以按表示式的規則建立一個複雜的表示式,也可以只簡單地指定一個變數作為表示式。

(4)可見度

可見度屬性頁設定項如圖8。13-5所示。

崑崙組態的動畫構件(八-4)

圖8。13-5可見度屬性

l 表示式:本項中輸入一個表示式用於控制構件是否可見,或者透過“?”從顯示的表示式列表中選取,不置任何表示式時,構件始終可見。

l 構件可見:當表示式的值為非時,構件可見。

l 構件不可見:當表示式的值為非時,構件不可見。

3、構件方法

EnableAutoCollect()

函式意義:允許實時曲線按照視窗重新整理週期從實時資料庫中獲取變數的值,來繪製曲線

返 回 值:整數

= 0,操作成功

= 1,操作失敗

實 例:視窗0。控制元件0。EnableAutoCollect()

DisableAutoCollect()

函式意義:禁止實時曲線按照視窗重新整理週期從實時資料庫中獲取變數的值,來繪製曲線

返 回 值:整數

= 0,操作成功

= 1,操作失敗

實 例:視窗0。控制元件0。DisableAutoCollect()

GetDrawMode()

函式意義:獲取曲線繪製模式,只對相對時鐘曲線有效

返 回 值:整數

= -1,操作失敗

= 1,畫點

返回其他值,畫線

實 例:視窗0。控制元件0。GetDrawMode()

SetDrawMode(para)

函式意義:設定曲線繪製模式,只對相對時鐘曲線有效

參 數:para整數,para = 1畫點,para 1畫線

返 回 值:整數

= 0,操作成功

= -1,操作失敗

實 例:視窗0。控制元件0。SetDrawMode(1)

ClearData()

函式意義:清除掉螢幕上已經繪製的曲線

返 回 值:整數

= 0,操作成功

= 1,操作失敗

實 例:視窗0。控制元件0。ClearData()

4、構件屬性

構件屬性參考8。2節。

5、構件事件

構件事件參考8。2節。

十四、歷史曲線

1、功能概述

歷史曲線構件實現了歷史資料的曲線瀏覽功能。執行時,歷史曲線構件能夠根據需要畫出相應歷史資料的趨勢效果圖。對於歷史資料的變化有一個很好的體現和描述。支援16條曲線,每條曲線最多可載入並顯示86400個數據點;曲線不宜過多,會消耗太多記憶體,影響體驗速度。

2、組態配置

組態時用滑鼠雙擊歷史曲線構件,彈出構件的屬性設定對話方塊。本構件包括基本屬性、資料來源、標註設定、曲線設定、輸出資訊和高階屬性六個屬性頁。

(1)基本屬性

基本屬性屬性頁如圖8。14-1所示。

崑崙組態的動畫構件(八-4)

圖8。14-1基本屬性

l 背景網格:設定座標網格的數目、顏色、線型。

l 背景顏色:設定曲線的背景顏色(含透明色)。

l 邊線顏色:設定曲線視窗的邊線顏色。

l 邊線線型:設定曲線視窗的邊線線型。

l 不顯示網格:選中此複選框,在構件的曲線視窗中不顯示座標網格。

(2)資料來源

資料來源屬性頁如圖8。14-2,該屬性是設定歷史存檔資料的來源,設定組物件對應的存檔資料作為資料來源。

崑崙組態的動畫構件(八-4)

圖8。14-2資料來源

(3)標註設定

標註設定屬性頁如圖8。14-3。

崑崙組態的動畫構件(八-4)

圖8。14-3標註設定

l X軸標識設定:組態X軸座標資料來源和座標範圍。

1)對應的列:X軸資料來源,只能選擇MCGS_Time;

2)座標長度:取值範圍為1~10000;

3)時間單位:可選擇年、月、天、時、分、秒;

4)時間格式:組態X軸標註顯示格式,可選擇“年-月-日 時:分:秒”等格式;

5)標註間隔:取值範圍為1~8;

6)標註顏色以及標註字型:

7)選中“不顯示X軸座標標註”複選框,將不顯示X軸的標註文字;

l 曲線起始點:設定一個時間作為歷史曲線開始繪製的起點時間。

1)存檔資料的開頭:以資料來源中的組物件的存檔資料的開頭作為曲線的起始點;

2)當前時刻的存檔資料:以系統當前時間倒推一個座標長度得出的時間作為曲線的起始點;

3)最近某時刻存檔資料:以系統當前時間為參考點,計算距離當前時間某一時刻的時間作為曲線的起始點;

4)當前某時的存檔資料:以當天指定時刻的時間作為曲線的起始點;

5)昨天某時的存檔資料:以昨天指定時刻的時間作為曲線的起始點;

6)本月某日的存檔資料:以本月指定日的零時刻的時間作為曲線的起始點;

7)上月某日的存檔資料:以上月指定日的零時刻的時間作為曲線的起始點;

(4)曲線設定

曲線設定屬性頁如圖8。14-4所示。

崑崙組態的動畫構件(八-4)

圖8。14-4曲線設定

l 配置每條曲線的屬性:

1)曲線內容:必須為資料來源中組物件的成員才會繪製該內容的曲線;

2)工程單位及小數位數在輸出資訊中體現,該文字支援多語言,詳情請見第十三章;

3)最小座標及最大座標設定的是該條曲線Y的座標值,只能顯示曲線1的最小最大值;

4)選中“不顯示Y軸標註”複選框,將不顯示Y軸的標註文字;

(5)輸出資訊

輸出資訊屬性設定項如圖8。14-5所示。

崑崙組態的動畫構件(八-4)

圖8。14-5輸出資訊

l 曲線輸出資訊:可編輯每條曲線的輸出資訊,以便在曲線輸出資訊視窗中顯示該條曲線的資訊,該文字支援多語言,詳情請參考第十三章。

l 對應資料物件:可對每條曲線關聯一個變數,所關聯的變數型別只能為浮點數或整數,建議為浮點數,可顯示小數位。在檢視曲線的當前值時,可用具有輸出型控制元件,如編輯框、標籤來顯示該變數的當前值。

l 型別:無實際意義;

需勾選“高階屬性”頁中“執行時顯示曲線顯示視窗”即可觀察輸出資訊。

(6)高階屬性

高階屬性設定項如圖8。14-6所示,該屬性頁中的功能為使用者自定義功能,選中某一功能的複選框則表示在執行時使用該功能,否則反之。

崑崙組態的動畫構件(八-4)

圖8。14-6高階屬性

l 執行時顯示曲線翻頁操作按鈕:表示在執行時將顯示如圖8。14-7所示按鈕。

圖8。14-7翻頁操作按鈕

其中:

按鈕點選後,曲線將向後(X軸左端)滾動曲線一頁;

按鈕點選後,曲線將向後(X軸左端)滾動曲線半頁;

按鈕點選後,曲線將向後(X軸左端)滾動一個主劃線位置;

按鈕點選後,曲線將向前(X軸右端)滾動一個主劃線位置;

按鈕點選後,曲線將向前(X軸右端)滾動曲線半頁;

按鈕點選後,曲線將向前(X軸右端)滾動曲線一頁;

按鈕點選後,將彈出曲線起始點時間設定對話方塊,可重新設定曲線的起點時間,如圖8。14-8所示。

崑崙組態的動畫構件(八-4)

圖8。14-8時間設定對話方塊

“設定時間範圍”對話方塊中選項說明:

1)最近時間:如最近3分鐘,讀取以當前系統時間倒推3分鐘的資料。

2)固定時間:(時間長度為3分鐘)如當天9時,讀取當天9:00:00~9:03:00。

3)指定時間:構件以指定時間為起點,讀取時間長度的資料。

此對話方塊在彈出前,可呼叫!SetDialogBy9Palace、!SetDialogByXYPosition指令碼函式改它的彈出位置和視窗大小。

l 執行時顯示曲線放大操作按鈕:表示在執行時將顯示X軸和Y軸的縮放按鈕,如圖8。14-9所示,可透過拖動該縮放按鈕實現檢視不同區間的曲線。

崑崙組態的動畫構件(八-4)

圖8。14-9放大操作按鈕

執行時顯示曲線資訊顯示視窗:表示在執行時,當滑鼠在曲線上移動,則可檢視滑鼠當前位置上曲線的值並輸出到如圖8。14-10所示的資訊輸出視窗上。

崑崙組態的動畫構件(八-4)

圖8。14-10資訊輸出視窗

l 執行時自動重新整理:在設定重新整理週期為t1,在經過t2時間後恢復自動重新整理狀態,則表示歷史狀態時,曲線當前介面無任何操作的情況下,至少經過t2時間後進入實時重新整理狀態並將最近一段X軸長度的歷史資料重新整理到介面上,在實時狀態下,至少每經過t1時間就自動將最近一段X軸長度的歷史資料重新整理到介面上。

l 執行時自動處理間隔點:設定斷點間隔時間t後,則表示若兩個資料之間的時間差大於t則認為這兩個點是不連續的,在繪製曲線時,不會將這兩個點連成一條直線。

l 資訊顯示視窗跟隨游標移動:該功能只在使用了“執行時顯示曲線資訊顯示視窗”功能的條件下有效,表示執行時,當滑鼠在曲線上移動時,資訊輸出視窗始終跟隨游標移動。

3、構件方法

SetXStart(Stime)

函式意義:設定X軸起始時間

返 回 值:浮點數

= 0,操作成功

0,操作失敗

參 數:Stime,字串,X軸的起始時間。

時間格式:“YYYY-MM-DD HH:MM:SS”、 “YYYY-MM-DD”、 “HH:MM:SS”,當設定時間為“YYYY-MM-DD”時,其時分秒部分與當前X軸起點時間的時分秒保持一致;當設定時間為“HH:MM:SS”時,其年月日部分與當前X軸起點時間的年月日部分保持一致。

實 例:指令碼方法。控制元件1。SetXStart (“2000-01-01 03:12:12”),表示將X軸的起點時間設定為2000年1月1日,3點12分12秒

注意事項:McgsPro系列產品的時間格式僅支援三種:

(1)年-月-日 時:分:秒

(2)年-月-日

(3)時:分:秒

GetXStart()

函式意義:獲取X軸的起始時間

返 回 值:字串,以格式“YYYY-MM-DD HH:MM:SS”表示X軸起始時間

參 數:無

實 例:指令碼方法。控制元件1。GetXStart()

注意事項:時間返回格式固定為“年-月-日 時:分:秒”

SetXLength(Xlen)

函式意義:設定x軸長度

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:Xlen,整數,X軸長度,長度的單位與設定的X軸的單位保持一致。

實 例:指令碼方法。控制元件1。SetXLength(5),如果X軸單位為小時,設定X軸長度為5小時

GetXLength()

函式意義:獲取X軸的長度

返 回 值:浮點數

X軸長度

參 數:無

實 例:指令碼方法。控制元件1。GetXLength()

SetXUnit(Xunit)

函式意義:設定X軸長度的單位

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗。

參 數:Xunit,字串,需要設定的長度單位,可以選擇的值包括:“秒”、“分”、“分鐘”、“時”、“小時”、“天”、“月”、“年”。

實 例:指令碼方法。控制元件1。SetXUnit(“分”),設定X軸長度的單位為分鐘

GetXUnit()

函式意義:獲取X軸長度的單位

返 回 值:字串,為X軸長度的單位,可能得到的值包括:“秒”、“分鐘”、“小時”、“天”、“月”、“年”

參 數:無

實 例:指令碼方法。控制元件1。GetXUnit()

SetXZoomFactor(Xzoom)

函式意義:設定X軸放大倍數

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗。

參 數:Xzoom,浮點數,使用者要設定的放大倍數,正數為放大;負數為縮小;0為復位。最大放大倍數和縮小倍數都不能大於20,也就是說,Xzoom取值在-20~20之間,大於20將取20,小於-20則取-20。

實 例:指令碼方法。控制元件1。SetXZoomFactor(2),將X軸放大2倍

GetXZoomFactor()

函式意義:獲取X軸放大倍數

返 回 值:浮點數,放大倍數,值範圍在-20~20之間

參 數:無

實 例:指令碼方法。控制元件1。GetXZoomFactor()

SetYZoomFactor(Yzoom)

函式意義:設定Y軸放大倍數

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:Yzoom,浮點數,使用者要設定的放大倍數,正數為放大;負數為縮小;0為復位。最大放大倍數和縮小倍數都不能大於20,也就是說,Yzoom取值在-20~20之間,大於20將取20,小於-20則取-20。

實 例:指令碼方法。控制元件1。SetYZoomFactor(2),將Y軸放大2倍

GetYZoomFactor()

函式意義:獲取Y軸放大倍數

返 回 值:浮點數,放大倍數,值範圍在-20~20之間

參 數:無

實 例:指令碼方法。控制元件1。GetYZoomFactor()

SetInfoWndVisible(Vstate)

函式意義:設定資訊視窗的顯示/隱藏狀態

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:Vstate,整數,

= 1,表示顯示資訊視窗

= 0,表示隱藏資訊視窗

實 例:指令碼方法。控制元件1。SetInfoWndVisible(1)

GetInfoWndVisible()

函式意義:獲取資訊視窗的顯示/隱藏狀態

返 回 值:浮點數

= 1,顯示資訊視窗

= 0,隱藏資訊視窗

參 數:無

實 例:指令碼方法。控制元件1。GetInfoWndVisible()

SetZoomCursorVisible(Cstate)

函式意義:設定遊標的顯示/隱藏狀態

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:Cstate,整數

= 1,表示顯示遊標

= 0,表示隱藏遊標

實 例:指令碼方法。控制元件1。SetZoomCursorVisible(1)

GetZoomCursorVisible()

函式意義:獲取遊標的顯示/隱藏狀態

返 回 值:浮點數

= 1,顯示遊標

= 0,隱藏遊標

參 數:無

實 例:指令碼方法。控制元件1。GetZoomCursorVisible()

SetTrendVisible(Tno,Tvisible)

函式意義:設定指定曲線的顯示/隱藏狀態

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:Tno,整數,曲線的索引,取值範圍[1,16]

Tvisible,整數,1表示顯示指定的曲線,0表示隱藏指定曲線

實 例:指令碼方法。控制元件1。SetTrendVisible(1,1),設定曲線1可見

GetTrendVisible(Tno)

函式意義:獲取指定曲線的顯示/隱藏狀態

返 回 值:浮點數

= 1,表示該曲線可見

= 0,表示該曲線不可見

參 數:Tno,整數,曲線的索引,取值範圍[1,16]

實 例:指令碼方法。控制元件1。GetTrendVisible (1)

SetTrendRange(Tno,Max,Min)

函式意義:設定指定曲線的Y座標的最大、最小值

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:Tno,整數,曲線的索引,取值範圍[1,16]

Max,浮點數,設定Y座標最大值

Min,浮點數,設定Y座標最小值

當輸入的值Max = Min時,程式會將Max的值處理為Max = Min + 100

實 例:指令碼方法。控制元件1。SetTrendRange(1,100,0)設定曲線1的最大值為100,最小值為0

GetTrendRange(Tno,Max,Min)

函式意義:獲取指定曲線的Y座標的最大、最小值

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:Tno,整數,曲線的索引,取值範圍[1,16]

Max,浮點數變數,獲取Y座標最大值

Min,浮點數變數,獲取Y座標最小值

實 例:指令碼方法。控制元件1。GetTrendRange(1, Max, Min)

ShowTimeDialog()

函式意義:顯示曲線起始時間對話方塊

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:無

實 例:指令碼方法。控制元件1。ShowTimeDialog()

XMovePrev()

函式意義:X座標向前移動一個主刻度

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:無

實 例:指令碼方法。控制元件1。XMovePrev()

XMoveNext()

函式意義:X座標向後移動一個主刻度

返 回 值:浮點數

= 0,為操作成功

0,操作失敗

參 數:無

實 例:指令碼方法。控制元件1。XMoveNext()

XPageUp()

函式意義:X座標向前移動一頁

返 回 值:浮點數

= 0,操作成功

0,為操作失敗

參 數:無

實 例:指令碼方法。控制元件1。XpageUp()

XPageDown()

函式意義:X座標向後移動一頁

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:無

實 例:指令碼方法。控制元件1。XpageDown()

XMoveToBegin()

函式意義:X座標移動最前面

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:無

實 例:指令碼方法。控制元件1。XmoveToBegin()

XMoveToEnd()

函式意義:X座標移動到最後面

返 回 值:浮點數

= 0為操作成功

0,為操作失敗

參 數:無

實 例:指令碼方法。控制元件1。XmoveToEnd()

YMoveUp()

函式意義:Y座標向上移動一個主刻度

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:無

實 例:指令碼方法。控制元件1。YmoveUp()

YMoveDown()

函式意義:Y座標向下移動一個主刻度

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:無

實 例:指令碼方法。控制元件1。YmoveDown()

YPageUp()

函式意義:Y座標向上移動一頁。

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:無

實 例:指令碼方法。控制元件1。YpageUp()

YPageDown()

函式意義:Y座標向下移動一頁

返 回 值:浮點數

= 0為操作成功

0為操作失敗

參 數:無

實 例:指令碼方法。控制元件1。YpageDown()

SetAutoRefresh(Rstate)

函式意義:設定自動重新整理狀態

返 回 值:浮點數

= 0,為操作成功

0,為操作失敗

參 數:Rstate,整數,1表示開啟自動重新整理,0表示關閉自動重新整理當開啟自動重新整理時,重新整理週期與進入重新整理狀態的時間與屬性框中顯示的值一致

實 例:指令碼方法。控制元件1。SetAutoRefresh(1),開啟自動重新整理狀態

GetAutoRefresh()

函式意義:獲取設定自動重新整理狀態

返 回 值:浮點數

= 1,當前自動重新整理功能處於開啟狀態

= 0,當前自動重新整理功能處於關閉狀態

參 數:無

實 例:指令碼方法。控制元件1。GetAutoRefresh()

4、構件屬性

構件屬性參考8。2節。

5、構件事件

構件事件參考8。2節。

6、注意事項

歷史曲線在使用過程中請注意一下幾點:

(1)座標長度取值範圍:

表8。14-1 座標長度取值範圍

(2)曲線起始點輸入值取值範圍:

表8。14-2 曲線起始點輸入值取值範圍

(3)實時重新整理有效需滿足以下的條件:

高階屬性中的實時重新整理功能已選中,或透過指令碼函式開啟了實時重新整理功能。

(4)實時重新整理中設定的重新整理週期t1與進入重新整理狀態時間t2只是個參考值,進入重新整理狀態的時間將不小於t2,重新整理週期的時間將不小於t1,具體時間值是多少與組態設定的中閃時間有關。

十五、存檔資料瀏覽

1、功能概述

存檔資料瀏覽構件的功能在於對歷史資料和歷史報警資料進行瀏覽和操作。具體方法是透過在“資料來源”屬性頁中,選擇存檔組物件進行關聯,並且在顯示屬性頁中的資料列與組物件中的成員進行關聯。透過這種方式可以對歷史存檔資料進行瀏覽和操作。

與歷史資料進行關聯時,存檔資料瀏覽構件支援時間篩選功能,在組態的構件屬性頁進行配置。

存檔資料瀏覽構件還提供了部分命令用於更好的瀏覽資料、設定外觀、和獲取變數值。

2、組態配置

存檔資料瀏覽構件包括基本屬性,資料來源,顯示屬性,時間條件4個屬性頁。

(1)基本屬性頁

基本屬性頁主要用於設定標題的屬性,內容的屬性和焦點的屬性,例如:字型、顏色和行高等。基本屬性頁見圖8。15-1。

崑崙組態的動畫構件(八-4)

圖8。15-1存檔資料瀏覽基本屬性頁

l 標題背景顏色:設定標題行背景顏色。

l 標題字型設定:設定標題文字顏色和字型。

l 表格行高:設定每一行的行高。

l 內容字型設定:設定內容文字顏色和字型。

l 奇行顏色:設定內容奇行背景顏色。

l 偶行顏色:設定內容偶行背景顏色。

l 網格顏色:設定網格的顏色。

l 是否顯示捲軸:設定是否顯示捲軸。

l 焦點行背景色:設定焦點行背景顏色。

l 焦點單元格色:設定焦點單元格背景顏色。

l 字型顏色:設定焦點行文字顏色。

(2)資料來源屬性頁

資料來源屬性頁用於設定選擇資料的來源,資料來源屬性頁見圖8。15-2。

崑崙組態的動畫構件(八-4)

圖8。15-2存檔資料瀏覽資料來源屬性頁

l 組物件:瀏覽自建的組物件的歷史資料,透過下拉選擇框選擇需要瀏覽的組物件。

l 報警瀏覽:瀏覽報警歷史資料,報警組物件中的變數名如表8。15-1如示。

表8。15-1 報警組物件變數名

l 操作日誌:瀏覽構件操作日誌,操作日誌組物件的變數名如表8。15-2所示

表8。15-2 操作日誌變數名

(3)顯示屬性頁

顯示屬性頁用於設定顯示的資料列名,顯示標題,輸出變數,顯示格式,對齊方式以及列寬。同時可以設定時間顯示格式,復位鍵可以根據選定的組物件自動列出相應的列名,顯示屬性頁見圖8。15-3。

崑崙組態的動畫構件(八-4)

圖8。15-3存檔資料瀏覽顯示屬性頁

l 資料列名:用於設定表格中對應列顯示的變數。

l 顯示標題:設定表格中對應列的標題,支援多語言,詳情請參考第十三章。

l 輸出變數:設定一個輸出變數,執行時輸出焦點所在行的變數的值。

l 單位:設定該列資料的顯示單位。與資料一起顯示在表格內,支援多語言,詳情請參考第十三章。

l 顯示格式:該列指定資料的顯示格式。指定格式的方式見“注意事項”。

l 對齊方式:指定表格對齊方式,有左對齊、中對齊、右對齊。

l 列寬度:用於指定存檔資料瀏覽構件的對應列的寬度。只支援正整數,異常值請見“注意事項”。

l 時間顯示格式:設定時間列中顯示時間的格式。如勾選了時、分、秒,就在時間列中顯示hh:mm:ss,例如12:13:25。如果勾選了年、月、日。就在時間列中顯示yyyy-MM-dd,例如2017-7-17。

(4)時間條件

時間條件用於設定被瀏覽資料的時間範圍和排序方式。排序方式有升序和降序,選擇升序則按時間的升序進行排列,反之按照時間的降序進行排列。提供四種選擇時間範圍的方式,時間條件屬性頁見圖8。15-4。

崑崙組態的動畫構件(八-4)

圖8。15-4存檔資料瀏覽時間條件屬性頁

l 排序方式:根據資料來源的時間列進行升序或者降序排列。如果資料來源為組物件,時間列為MCGS_Time;如果資料來源為報警資料時間列為TIMES。

l 資料篩選:根據資料來源中的時間列篩選資料。如果資料來源為組物件,時間列為MCGS_Time;如果資料來源為報警資料時間列為TIMES。

l 所有存檔資料:處理所有時間段的存檔資料

l 最近時間:處理最近M分鐘內的存檔資料

l 固定時間:處理從某個固定時間點開始的存檔資料,固定時間可以分為當天、前一天、本星期、前星期、本月、前一月。對於當天和前一天時間分割點的含義是小時,數值應該在0-23之間;對於本星期和前星期時間分割點的含義是星期幾,數值範圍應該在1-7之間;對於本月和前月時間分割點的含義是天,數值範圍應該在1-31之間。具體時間範圍如表8。15-3所示。

表8。15-3 固定時間範圍說明

3、構件方法

存檔瀏覽函式方法是一組指令碼命令,用於程式執行時使用者透過組態實現用指令碼控制存檔瀏覽構件進行翻頁、移動、調整構件外觀、和獲取表格值。

GetRowSelect(RowNo)

函式意義:檢查行是否被選中

參 數:RowNo,整數,檢查的行號,從1開始計算

返 回 值:整數

= 0,沒被選中

= 1,行被選中

實 例:ret = 屬性。控制元件0。GetRowSelect(5),如果焦點在第5 行上,ret的值為1,否則為0

注意事項:當RowNo總行數時始終返回0。

SetRowSelect(RowNo, n)

函式意義:設定行是否被選中

參 數:RowNo,整數,要設定的行號,從1開始計算

n,整數,選擇標誌,n=非0值為選中;n=0為不選

返 回 值:浮點數,恆為0

實 例:ret = 屬性。控制元件0。SetRowSelect(5,1),ret值為0

注意事項:當RowNo=

當RowNo>=總行數時,則是對最末行操作

GetColSelect( ColNo )

函式意義:檢查列是否被選中

參 數:ColNo,整數,要檢查的列,從1開始,最大不超過總列數

返 回 值:整數

=0,沒有選中

=1,列被選中

實 例:ret =屬性。控制元件0。GetColSelect(5),如果焦點在第5列上,ret的值

為1,否則為0

注意事項:當ColNo總列數時始終返回0。

SetColSelect( ColNo, n)

函式意義:設定列是否被選中。

參 數:ColNo,整數,要設定的列號

n,整數,選擇標誌,n=非0值 為選中;n=0 為不選

返 回 值:浮點數

=0,設定成功

0,設定不成功。

實 例:ret = 屬性。控制元件0。SetColSelect(5,1),ret值為0

注意事項:當ColNo=

當ColNo>=總列數時,則是對最末列操作

GetCellValue( RowNo , ColNo)

函式意義:獲得指定表格內的值

參 數:RowNo,整數,指定的行號,從0開始計算。

ColNo,整數,指定的列號,從0開始計算。

返 回 值:字元型,指定表格內的值。

實 例:strRet = 屬性。控制元件0。GetCellValue(1,2),獲取表格中第1行第

2列的資料,返回的結果是一個字串值。

注意事項:當RowNo=總行數時返回空字串;

當ColNo=大於總列數時返回空字串。

PageUp( )

函式意義:向上翻頁

參 數:無引數

返 回 值:浮點數

返回值為0

實 例:屬性。控制元件0。PageUp()

PageDown()

函式意義:向下翻頁

參 數:無引數

返 回 值:浮點數,恆為0

實 例:屬性。控制元件0。PageDown()

MoveUp()

函式意義:向上移動一行

參 數:無引數

返 回 值:浮點數

返回值為0

實 例:屬性。控制元件0。MoveUp()

MoveDown()

函式意義:向下移動一行

參 數:無引數

返 回 值:浮點數

返回值為0

實 例:屬性。控制元件0。MoveDown()

Home()

函式意義:向上翻頁到存檔資料的開頭。

參 數:無引數

返 回 值:浮點數,恆為0

實 例:屬性。控制元件0。Home()

End()

函式意義:向下翻頁到存檔資料的末端

參 數:無引數

返 回 值:浮點數,恆為0

實 例:屬性。控制元件0。End()

MoveLeft()

函式意義:向左移動10個畫素

參 數:無引數

返 回 值:浮點數,恆為0

實 例:屬性。控制元件0。MoveLeft()

MoveRight()

函式意義:向右移動10個畫素

參 數:無引數

返 回 值:浮點數,恆為0

實 例:屬性。控制元件0。MoveRight()

SeekToPosition(n)

函式意義:直接定位到指定的位置

參 數:n,整數,為指定的跳轉位置。

返 回 值:浮點數,恆為0

實 例:屬性。控制元件0。SeekToPosition(5),存檔資料瀏覽構件定位到行號5

注意事項:當RowNo=總行數時,則是對最末行操作

GetColWidth(ColNo)

函式意義:獲取指定列的寬度。

參 數:ColNo,整數,指定的列號。

返 回 值:整數,指定列的寬度,當指定的列不存在時返回值為0。

實 例:ret = 屬性。控制元件0。GetColWidth(5),獲取存檔資料瀏覽構件第5列的寬度,ret是第5列的返回值

SetColWidth(ColNo ,Width)

函式意義:設定指定列的寬度

參 數:ColNo,整數,指定的列號

Width,整數,要設定的寬度。

如果指定的列號不存在,則設定寬度不起作用

如果設定的寬度小於或等於0,則函式執行後對應的列不可見

返 回 值:浮點數,恆為0

實 例:屬性。控制元件0。SetColWidth(5,100),設定存檔資料瀏覽構件第5

列的寬度值為100

SetTimeDialog()

函式意義:開啟時間條件設定對話方塊

參 數:無引數

返 回 值:浮點數,恆為0

實 例:屬性。控制元件0。SetTimeDialog(),開啟時間設定對話方塊

Refresh()

函式意義:重新整理列表資料

參 數:無引數

返 回 值:浮點數

=0,重新整理成功

=1,重新整理失敗

實 例:ret = 屬性。控制元件0。Refresh()

4、構件屬性

存檔資料瀏覽構件的屬性Name,Left,Top,Height,Width,Focus,Visible等常規屬性構件屬性參考8。2節,這裡介紹存檔資料瀏覽構件的擴充套件屬性。

Row

屬性意義:獲得、設定當前屏表格的當前行

物件型別:浮點數、整數

讀寫型別:讀寫

注意事項:當寫入值表格行數時設定表格末行為當前行

Col

屬性意義:獲得、設定表格的當前列

物件型別:浮點數、整數

讀寫型別:讀寫

注意事項:當寫入值總列數時設定末列為當前列

Cols

屬性意義:獲得表格的總列數

數值型別:浮點數、整數

讀寫型別:只讀

DataRows

屬性意義:獲得表格的總行數

數值型別:浮點數、整數

讀寫型別:只讀

DataRow

屬性意義:獲得表格當前選中的序號

數值型別:浮點數、整數

讀寫型別:讀寫

注意事項:當寫入值總行數時設定末行為當前選中行

DataFirstVisibleRow

屬性意義:當前屏表格第一個可見行的序號

數值型別:浮點數、整數

讀寫型別:讀寫

注意事項:當寫入值總行數時設定末行為第一個可見行

RowsPerPage

屬性意義:每頁顯示的行數

數值型別:浮點數

讀寫型別:只讀

5、構件事件

構件事件參考8。2節。

6、注意事項

(1)存檔資料瀏覽構件連線的組物件,必須設定開啟存檔功能方能顯示歷史資料。

(2)顯示屬性頁中的顯示格式,有如下關係:

當連線的變數是浮點數物件或整數物件且希望輸出數值型格式時,格式化字串應寫為 :“數字1|數字2”的樣式。在這裡,“數字1”指的是輸出的數值應該具有小數位的位數,“數字2”指的是輸出的字串後面,應該帶有的空格個數,在這兩個數字的中間,用符號 “|” 分開。如:“3|2”表示輸出的數值有三位小數和附加兩個空格,小數位數範圍為[0,15],空格個數範圍為[0,1024]。

當連線的變數是浮點數物件或整數物件且希望輸出開關型格式時,格式化字串應寫為:“字串1|字串2”的樣式。其中,“字串1”指的是當變數的值為非零時,在此表格表單元內應顯示的內容;“字串2”的內容則在變數的值為零時顯示。兩者之間用 “|”隔開。如:“有效|無效”,“開|關”,“正確|錯誤”等都可作為開關型格式的輸出格式化字串。

當連線的變數是字元型物件時,不按格式化字串處理,顯示字串物件內容。

當字串不能被識別時,McgsPro組態軟體將簡單地用預設的格式顯示變數的值。

(3)McgsPro組態軟體中不支援數值條件的篩選功能。

(4)此構件列寬值只支援正整數,其他負數、字母、特殊字元為無效,使用預設值50;輸入浮點數時會向下取整。

TAG: 屬性曲線浮點數控制元件設定