1、Text文本框
Create ——> Text ——> String 、Text Message 、Text Box 控件
2、列表框(List Box)、樹控件(Tree)、表格控件(Table)
Create ——> Lists&Tables ——> List BOX 、Tree 、Table
控件功能函數:
Library ——> User Interface Library ——> Controls/Grqaphs/Strip Charts ——> General Functions
New Control :NewCtrl 新建控件,穿件一個新控件,並返回該控件的ID值
Duplicate Control :DuplicateCtrl 復制控件,
Discard Control :DiscardCtrl 刪除控件
Get Active Control :GetActiveCtrl 獲得當前激活控件
Set Active Control :SetActiveCtrl 激活制定控件
Default Control Value :DefaultCtrl 設置控件默認值,恢復指定面板控件的默認值
Get Control Value :GetCtrlVal 獲取控件當前值
Set Control Value :SetCtrlVal 設置控件當前值
Get Control Attribute :GetCtrlAttribute 獲取控件屬性值
Set Control Attribute :SetCtrlAttribute 設置控件屬性值
Get Control Bounding Rectangle :GetCtrlBoundingRect 獲取控件的位置坐標
3、文本框使用編程實例

#include <formatio.h> #include <cvirte.h> #include <userint.h> #include "控件2.h" static int panelHandle; int main (int argc, char *argv[]) { if (InitCVIRTE (0, argv, 0) == 0) return -1; /* out of memory */ if ((panelHandle = LoadPanel (0, "控件2.uir", PANEL)) < 0) return -1; DisplayPanel (panelHandle); RunUserInterface (); DiscardPanel (panelHandle); return 0; } //“轉移”按鈕的回調函數 int CVICALLBACK transfer (int panel, int control, int event, void *callbackData, int eventData1, int eventData2) { int maxitems; int i; char label[10]; char Tag[32]; int value; int checked; static int j=0; switch (event) { case EVENT_COMMIT: //清除指定列表框 ClearListCtrl(panelHandle,PANEL_TREE); //向文本框的末尾添加一行文本 InsertTextBoxLine(panelHandle,PANEL_TEXTBOX,-1,"轉移並顯示目錄"); j=0; //獲得列表框項目的數目 GetNumListItems(panelHandle,PANEL_LISTBOX,&maxitems); for(i = 0 ; i < maxitems; i++) { //獲得列表框中指定項目的選中狀態 //IsListItemChecked(panelHandle,PANEL_LISTBOX,i,&checked); IsListItemChecked(panelHandle,PANEL_LISTBOX,i,&checked); //如果該項目被選中,則執行以下操作 if(checked) { j=j+1; //獲得指定索引項目的value值 GetValueFromIndex(panelHandle,PANEL_LISTBOX,i,&value); //獲得指定索引項目的標題 GetLabelFromIndex(panelHandle,PANEL_LISTBOX,i,label); //將選中的項目插入到指定的樹控件 InsertTreeItem(panelHandle,PANEL_TREE,VAL_SIBLING,j-2,VAL_NEXT,label,"",Tag,value); } } break; } return 0; } //“清除已選目錄”按鈕的回調函數 int CVICALLBACK clear (int panel, int control, int event, void *callbackData, int eventData1, int eventData2) { switch (event) { case EVENT_COMMIT: //清除控件的內容 ClearListCtrl(panelHandle,PANEL_TREE); //向文本框末尾插入一行文本 InsertTextBoxLine(panelHandle,PANEL_TEXTBOX,-1,"清除已選目錄"); break; } return 0; } //“插入”按鈕的回調函數 int CVICALLBACK insert (int panel, int control, int event, void *callbackData, int eventData1, int eventData2) { char newitem[10]; switch (event) { case EVENT_COMMIT: //向文本框末尾插入一行文本 InsertTextBoxLine(panelHandle,PANEL_TEXTBOX,-1,"添加目錄"); //得到指定String控件的值 GetCtrlVal(panel,PANEL_STRING_INSERT,newitem); //向列表框插入新的項目 InsertListItem(panelHandle,PANEL_LISTBOX,-1,newitem,0); break; } return 0; } //“移除”按鈕的回調函數 int CVICALLBACK delete (int panel, int control, int event, void *callbackData, int eventData1, int eventData2) { int maxitems; char removeitem[10]; int i; char label[10]; switch (event) { case EVENT_COMMIT: InsertTextBoxLine(panelHandle,PANEL_TEXTBOX,-1,"移除目錄"); GetCtrlVal(panelHandle,PANEL_STRING_DELETE,removeitem); GetNumListItems(panelHandle,PANEL_LISTBOX,&maxitems); for(i = 0 ; i < maxitems ; i++ ) { //獲得指定索引的項目標題 GetLabelFromIndex(panelHandle,PANEL_LISTBOX,i,label); //判斷該標題是否和指定的內容相一致 if(CompareStrings(label,0,removeitem,0,1)==0) { //刪除列表框指定項目 DeleteListItem(panelHandle,PANEL_LISTBOX,i--,1); maxitems--; } } break; } return 0; } //“退出”按鈕的回調函數 int CVICALLBACK QuitCallback (int panel, int control, int event, void *callbackData, int eventData1, int eventData2) { switch (event) { case EVENT_COMMIT: QuitUserInterface(0); break; } return 0; }