CVI-2ppt課件.ppt_第1頁
CVI-2ppt課件.ppt_第2頁
CVI-2ppt課件.ppt_第3頁
CVI-2ppt課件.ppt_第4頁
CVI-2ppt課件.ppt_第5頁
已閱讀5頁,還剩35頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第二章 常用控件的使用和編程,主要內(nèi)容: 1、LabWindows/CVI的面板 2、常用控件 文本框控件 數(shù)值型控件 命令按鈕控件 雙態(tài)按鈕控件 列表框、樹控件和表格控件 圖表控件 3、彈出式面板 4、文件讀寫和格式化,1,Labwindows/CVI的面板,1、面板的屬性,2,2、面板操作類函數(shù),LoadPanel函數(shù):將面板裝載到內(nèi)存中 int panelHandle =LoadPanel (int parentPanelHandle, char filename , int panelResourceID);,NewPanel函數(shù):創(chuàng)建新面板 int panelHandle =NewP

2、anel (int parentPanelHandle, char panelTitle, int panelTop, int panelLeft, int panelHeight, int panelWidth);,DisplayPanel:顯示面板 int Status= DisplayPanel (int panelHandle);,3,DiscardPanel:刪除面板 int Status= DiscardPanel (int panelHandle);,HidedPanel:隱藏面板 int Status= HidedPanel (int panelHandle);,SetPane

3、lAttribute:設(shè)置面板屬性 int Status= SetPanelAttribute (int panelHandle, int panelAttribute, .);,GetPanelAttribute:獲得面板屬性 int Status=GetPanelAttribute (int panelHandle, int panelAttribute, void *attributeValue);,舉例:面板函數(shù)設(shè)計(jì)與應(yīng)用,4,常用控件介紹,1、控件通用函數(shù),函數(shù)的使用舉例,5,2、文本框控件,用來輸入、顯示一行或多行文本信息,包括:String、Text Message和Text B

4、ox控件,控件屬性,6,文本框控件種類不同,其屬性設(shè)置也不完全相同,以String控件為例來說明 。,7,控件功能函數(shù),常用函數(shù)的使用舉例,8,3、數(shù)值型控件,可作為用戶參數(shù)輸入窗或程序參數(shù)回顯窗。包括:數(shù)值控件,顏色選擇控件,數(shù)值滑動(dòng)條。,控件屬性,9,10,4、命令按鈕控件,用來觸發(fā)一個(gè)事件來進(jìn)行程序控制, 一般必須定義回調(diào)函數(shù)。包括命令按鈕和圖片按鈕。,控件屬性,11,12,5、雙態(tài)按鈕控件,具有兩種狀態(tài),分別為“1”和“0”。分為3類:雙態(tài)按鈕、文本/圖形雙態(tài)按鈕、單選/復(fù)選控件。,控件屬性,舉例說明,控件狀態(tài)值的設(shè)定,13,6、循環(huán)控件,包括下拉列表控件、滑動(dòng)列表控件、圖形列表控件。

5、 用于在一組值中進(jìn)行選擇,既可以用鼠標(biāo)單擊控件框、或單擊控件的上、下箭頭進(jìn)行選擇,也可以用鍵盤的Up和Down鍵進(jìn)行選擇。,14,控件屬性 以下拉列表控件為例來說明,15,16,7、列表框、樹控件和表格控件,列表框?yàn)橛脩籼峁┻x項(xiàng)功能,控件本身顯示列表項(xiàng),用戶可選擇某項(xiàng),同時(shí)具有添加滾動(dòng)條功能,列表框是由數(shù)值和標(biāo)簽對(duì)組成的,每對(duì)都有其索引值。 樹控件提供了一組分組項(xiàng)目列表,用戶可以選擇某一項(xiàng)目或項(xiàng)目組。 表格控件可以輸入或觀察數(shù)組,每個(gè)單獨(dú)的表格單元有六種類型可以選擇:Numeric型、String型、Picture型、Ring型、Combo Box型和Button型。,17,LIST BOX控

6、件屬性,18,LIST BOX 控件的功能函數(shù),實(shí)現(xiàn)向列表框中插入項(xiàng)目、刪除項(xiàng)目、獲得屬性值、設(shè)置屬性值等功能。,InsertListItem():向列表控件指定的索引位置插入項(xiàng)目。 int InsertListItem (int panelHandle, int controlID, int itemIndex, char itemLabel, any type Item_Value);,DeleteListItem():刪除列表框中一個(gè)或多個(gè)項(xiàng)目?jī)?nèi)容。 int DeleteListItem (int panelHandle, int controlID, int itemIndex, in

7、t numberOfItems);,GetCtrlIndex():獲得控件的索引值。 int GetCtrlIndex (int panelHandle, int controlID,int *itemIndex),19,GetLabelFromIndex():從指定的索引中得到該標(biāo)題名。 int GetLabelFromIndex (int panelHandle, int controlID, int itemIndex, char itemLabel);,GetValueFromIndex():從指定的索引中獲得項(xiàng)目值 int GetValueFromIndex (int panelHa

8、ndle, int controlID, int itemIndex, void *itemValue);,其它函數(shù)可以通過:LibraryUser Inference LibraryControls/Graphs/Strip ChartsList/Tree(Label/Value)Controls來查看和使用,具體應(yīng)用也可參考CVI幫助,函數(shù)應(yīng)用舉例,20,TREE 控件屬性,21,TREE 控件的功能函數(shù),有插入行、刪除行、獲得單元格數(shù)據(jù)值、設(shè)置單元數(shù)據(jù)值等功能。,InsertTreeItem():插入新項(xiàng)目。 int InsertTreeItem (int panelHandle, in

9、t controlID, int relation, int relativeIndex, int position, char itemLabel, char tagBase, char tag,any type Item_Value);,GetNumTreeItems(): int GetNumTreeItems (int panelHandle, int controlID, int relation, int relativeIndex, int beginIndex, int direction, int stateCriteria, int *count);),函數(shù)應(yīng)用舉例,22,

10、TREE 控件屬性,23,TABLE 控件的功能函數(shù),插入行、刪除行、獲得單元格數(shù)據(jù)值、設(shè)置單元數(shù)據(jù)值。,24,8、圖表控件,Graph控件:用來圖形化顯示數(shù)據(jù),可以顯示一條或多條曲線,每條曲線包含曲線、數(shù)據(jù)點(diǎn)、幾何圖形、圖片或字符串。 Strip Chart控件:可以實(shí)現(xiàn)繪制一條或多條動(dòng)態(tài)曲線,并且能夠及時(shí)更新,但是不支持繪制幾何圖形、光標(biāo)、縮放和移動(dòng)功能。有3種滾動(dòng)模式:連續(xù)模式、刷新模式和塊模式 Digital Graph控件:一般為Indicator型,不能通過鍵盤和鼠標(biāo)操作,用來顯示一組數(shù)字(0、1)數(shù)據(jù),沿y軸從上至下記錄數(shù)組數(shù)據(jù),第一個(gè)數(shù)據(jù)相應(yīng)的顯示在sample0-line0上

11、,第二個(gè)數(shù)據(jù)顯示在sample0-line1上,依次類推,可以用來表示在Bus和Line上數(shù)據(jù)的分配情況。將大于等于1的數(shù)值顯示為1,等于0的數(shù)值顯示為0。,25,GRAPH 控件屬性,26,GRAPH 控件功能函數(shù),繪圖功能函數(shù),Graph控件可以使用不同類型的數(shù)據(jù),繪制多種類型的圖表。,常用函數(shù)介紹,27,光標(biāo)功能函數(shù),如果需要使用光標(biāo)功能,必須將控件模式設(shè)置為Indicator型以外的任何類型。,注釋功能函數(shù),向圖表中加注釋,以表明Graph控件中的指定數(shù)據(jù)點(diǎn),如果用戶操作Graph控件的注釋,需要將控件類型設(shè)置為非Indicator型控件模式,當(dāng)用鼠標(biāo)移動(dòng)注釋標(biāo)題時(shí),將會(huì)連續(xù)產(chǎn)生EVE

12、NT_VAL_CHANGED事件。,縮放、移動(dòng)視區(qū)功能,可將視區(qū)內(nèi)某一特定點(diǎn)放大或縮小,同時(shí)也可以使用移動(dòng)視區(qū)功能。,函數(shù)應(yīng)用舉例 見例程(2-11),28,Strip Chart控件屬性,29,Strip Chart 控件功能函數(shù),綜合舉例,30,9、彈出式面板,在編寫CVI程序時(shí),常常需要在程序運(yùn)行過程中,彈出面板,給用戶一些提示。彈出式面板被激活后,將顯示在程序的最頂層位置。主要有: Message Popup:信息提示彈出面板 Generic Message Popup:簡(jiǎn)單的輸入信息彈出面板 Prompt Popup:提示式彈出面板 Confirm Popup:確認(rèn)信息彈出式面板 F

13、ile Select Popup:文件路徑選擇彈出式面板 Graph彈出式面板 Font Select Popup:打開字體設(shè)置對(duì)話框 DirSelectPopup:文件路徑彈出對(duì)話框,31,MessagePopup() GenericMessagePopup() PromptPopup() ConfirmPopup () FileSelectPopup() YGraphPopup() FontSelectPopup() DirSelectPopup,彈出式面板類函數(shù)如下:,具體函數(shù)應(yīng)用見: LibraryUser Inference Library Pop-up Panels,32,在對(duì)話框

14、中顯示信息,等待用戶按下OK鍵。可以顯示多行信息,使用“n”重新開始一行文本。函數(shù)原型如下: int MessagePopup (char title, char message); 例: MessagePopup (Message Popup, 這是一個(gè)Message Popup 窗口!),Message Popup信息提示彈出面板:用來顯示提示信息。,33,Generic Message Popup 信息提示彈出面板:可輸入信息字符串,并且最多可設(shè)置三個(gè)按鈕。,在彈出式面板中顯示一個(gè)設(shè)定的信息,同時(shí)面板上還有一個(gè)字符串文本框接收響應(yīng)的字符串。 函數(shù)原型如下: int GenericMess

15、agePopup (char title, char message, char buttonLabel1, char buttonLabel2, char buttonLabel3, char responseBuffer, int maxResponseLength, int buttonAlignment, int activeControl, int enterButton, int escapeButton);,34,Prompt Popup(提示式彈出面板):要求用戶進(jìn)行輸入操作 。,面板上顯示一個(gè)信息等待用戶進(jìn)行信息操作。 函數(shù)原型如下: int PromptPopup (cha

16、r title, char message, char responseBuffer, int maxResponseLength);,應(yīng)用舉例 (見例程2-4),35,10、文件讀寫和格式化,文件讀寫函數(shù):供用戶打開、關(guān)閉和讀寫磁盤文件,具體函數(shù)應(yīng)用可查看:LibraryFormatting and I/O Library,36,字符串操作函數(shù):包含字符串和字符緩沖區(qū)的基本操作。,37,數(shù)據(jù)格式化函數(shù):可進(jìn)行復(fù)雜的數(shù)據(jù)格式化輸入輸出操作。,Fmt函數(shù):將一個(gè)或多個(gè)數(shù)據(jù)源格式化到一個(gè)目標(biāo)文件中。 int Fmt (void *target, char *formatString, source

17、1, . , source n) *target:存儲(chǔ)格式化后的數(shù)據(jù)。 Source1.:需要格式化的數(shù)據(jù)源。 *formatString:定義格式化類型,格式如下 “target_spec source_specs_and_literals”,Scan函數(shù):將一個(gè)數(shù)據(jù)源格式化到一個(gè)或多個(gè)目標(biāo)文件中。 int Scan (void *source, char *formatString, targetptr1, , targetptr n) *target:存儲(chǔ)格式化后的數(shù)據(jù)。 Source1.:需要格式化的數(shù)據(jù)源。 *formatString:定義格式化類型,格式如下 “source_specs target_spec_and_literals

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論