Tree控件的使用
本節(jié)將重點討論LabVIEW中的Tree控件,也許是控件本身的使用比較“麻煩”,導致很多程序員不愿意使用該控件。其實在大多數(shù)的應(yīng)用程序中均可以看到Tree的身影,如Windows操作系統(tǒng)中的“資源管理器”左側(cè)的文件列表,通常Tree控件可以用來顯示一些有組織的、分類明確的數(shù)據(jù)。
1.1編輯Tree控件的外觀
Tree控件位于LV的控件選板“List&Table”子選板中,如圖 1所示。從背面板可以看出Tree實質(zhì)上是一種字符串(String)類型,這難免會讓人費解:如何將前面板大量的“條理性的數(shù)據(jù)”與String對應(yīng)呢?
圖 1 Tree控件
選擇工具選板中的Edit Text工具,可以直接在Tree控件中輸入數(shù)據(jù)。
- 通過Tree控件的右鍵快捷菜單Visible Items菜單項,可以改變Tree控件的顯示外觀,如圖 2所示??梢灾鹨还催x/不勾選該菜單項中的菜單,就明確了各個菜單項對應(yīng)的含義。
圖 2 改變Tree控件的顯示外觀
- 在Visible Items中有一個Symbols菜單項,從外觀上看勾選或不勾選該選項沒有什么區(qū)別。原來,LabVIEW允許對Tree中的每一行指定一個符號,顯示在行首。要顯示該符號首先需要勾選Visible Items→Symbols選項,其次在某一行上右擊彈出的快捷菜單上選擇Item Symbol菜單項,并選擇一個符號。如圖 3所示。LabVIEW提供了42種符號可供選擇,其中第1種為空(默認值,因此前面在勾選Visible Items→Symbols后看不到變化)??梢酝ㄟ^該方式為每一行添加各種不同的符號。
圖 3 選擇Symbol
- 在Windows資源管理器中,我們可以看到Tree是能夠顯示層級關(guān)系的。這一點可以通過選擇右鍵快捷菜單中的Indent Item和Outdent Item實現(xiàn),在第圖中的3行上右擊選擇Indent Item,則第3行變成了第2行的子行,如圖 4所示。此時,LabVIEW會自動添加一個“+”或“—”符號,如同Windows資源管理器中顯示的一樣。程序員可以通過選擇快捷菜單中的Expand/Contract Symbol Type選項來改變該符號的顯示樣式。
圖 4 改變Tree控件的層次關(guān)系
- 那么LabVIEW究竟如果把Tree控件上顯示的諸多字符串表示在底層函數(shù)面板中呢?我們可以嘗試使用一個String顯示件驗證Tree控件的輸出,其前面板和背面板如圖 5所示。運行該VI,并且選擇Tree的不同行(隨著選擇的不同,被選中的行會以藍色高亮顯示,比如圖中的第3行),觀察String顯示件中的值。可以得到Tree控件的輸出好像是每一行的首列字符串,但是第4行的輸出卻是A_1,這是一個從來沒有輸入過的值。
圖 5 測試Tree控件的輸出字符串
選擇Tree右鍵快捷菜單中的Edit Item…菜單項,將彈出如圖 6所示的對話框。對話框的左側(cè)是Tree控件顯示的內(nèi)容,改變控件的選擇,可以看出右側(cè)的Tag會隨之改變,并且第4行的Tag值正好是A_1。原來Tree控件為每一行自動分配了一個唯一的Tag值(該值可以在Edit Item對話框中修改,但是必須確保唯一性和非空性),其輸出則是當前選中行的Tag值。我們可以嘗試將第4行的Tag值強行修改為A,此時LabVIEW將會以紅色背景顯示Tag值,表示該Tag值重復,無法正常使用(也就是說Tree控件中每一行的Tag值必須是唯一并且非空的)。
評論