- LabVIEW 2018 虛擬儀器程序設計
- 毛瓊 王敏
- 3335字
- 2020-06-11 15:17:43
2.4 菜單設計
菜單是圖形用戶界面中的重要和通用的元素,幾乎每個具有圖形用戶界面的程序都包含菜單,流行的圖形操作系統也都支持菜單。菜單的主要作用是使程序功能層次化,而且用戶在掌握了一個程序菜單的使用方法之后,可以很容易地使用其他程序的菜單。
2.4.1 菜單編輯器
建立和編輯菜單的工作是通過“菜單編輯器”來完成的。在前面板或程序框圖窗口的主菜單里選擇“編輯”→“運行時菜單…”,打開圖2-14所示的“菜單編輯器”對話框。

圖2-14 “菜單編輯器”對話框
菜單編輯器本身的菜單條有“文件”“編輯”和“幫助”3個菜單項。菜單欄下面是工具欄,在工具欄的左邊有6個按鈕:第1個按鈕的功能是在被選中菜單項的后面插入生成一個新的菜單項;第2個按鈕的功能是刪除被選中的菜單項;第3個按鈕的功能是把被選中的菜單項提升一級,使得被選中菜單項后面的所有同級菜單項成為被選中菜單項的子菜單項;第4個按鈕的功能是把被選中菜單項降低一級,使得被選中的菜單項成為前面最接近的統計菜單項的子菜單項;第5個按鈕的功能是把被選中菜單項向上移動一個位置;第6個按鈕的功能是把被選中菜單項向下移動一個位置。對于第5、6個按鈕的移動動作,如果該選項是一個子菜單,則所有子菜單項將隨之移動。
在工具欄按鈕的右側是菜單類型下拉列表框,包括3個列表項:“默認”、“最小化”和“自定義”,它們決定了與當前VI關聯的運行時菜單的類型。“默認”選項表示使用LabVIEW提供的標準默認菜單;“最小化”選項是在“默認”菜單的基礎上進行簡化而得到;“自定義”選項表示完全由程序員生成菜單,這樣的菜單保存在擴展名為.rtm的文 件里。
工具欄的“預覽”給出了當前菜單的預覽;菜單結構列表框中給出了菜單的層次結構 顯示。
在“菜單項屬性”區域內設定被選中菜單項或者新建菜單項的各種參數。“菜單項類型”下拉列表框定義了菜單項的類型,可以是“用戶項”“分隔符”和“應用程序項”三者之一。“用戶項”表示用戶自定義的選項,必須在程序框圖中編寫代碼,才能響應這樣的選項。每一個“用戶項”菜單選項都有選項名和選項標記符兩個屬性,這兩個屬性在“菜單項名稱”和“菜單項標識符”文本框中指定。“菜單項名稱”作為菜單項文本出現在運行時的菜單里,“菜單項標識符”作為菜單項的標識出現在程序框圖上。在“菜單項名稱”文本框中輸入菜單項文本時,菜單編輯器會自動地把該文本復制到“菜單項標識符”文本框中,即在默認情況下菜單選項的文本和框圖表示相同。可以修改“菜單項標識符”文本框的內容,使之不同于“菜單項名稱”的內容。“分隔符”選項建立菜單里的分割線,該分割線表示不同功能菜單項組合之間的分界。“應用程序項”實際上是一個子菜單,在里面包含了所有系統預定義的菜單項。可以在“應用程序項”菜單里選擇單獨的菜單項,也可以選中整個子菜單。類型為“應用程序項”的菜單項的“菜單項名稱”“菜單項標識符”屬性都不能修改,而且不需要在框圖上對這些菜單項進行響應,因為它們都是已經定義好的標準動作。
“菜單項名稱”和“菜單項標識符”文本框分別定義菜單項文本和菜單項標識。“菜單項名稱”中出現的下畫線具有特殊的意義,即在真正的菜單中,下畫線將顯示在“菜單項名稱”文本中緊接在下畫線后面的字母下面,在菜單項所在的菜單里按下這個字符,將會自動選中該菜單項。如果該菜單項是菜單欄上的最高級菜單項,則按下〈Alt+字符〉鍵將會選中該菜單項。例如可以自定義某個菜單項的名字為“文件(_F)”,這樣在真正的菜單里顯示的文本將為“文件(F)”。如果菜單項沒有位于菜單欄中,則在該菜單項所在菜單里按下〈F〉鍵,將自動選擇該菜單項。如果“文件(F)”是菜單欄中的最高級菜單項,則按下〈Alt+F〉鍵將打開該菜單項。所有菜單項的“菜單項標識符”必須不同,因為“菜單項標識符”是菜單項在程序框圖代碼中的唯一標識符。
“啟用”復選框指定是否禁用菜單項,“勾選”復選框指定是否在菜單項左側顯示對號確認標記。“快捷方式”文本框中顯示了為該菜單項指定的快捷鍵,單擊該文本框之后,可以按下適當的按鍵,定義新的快捷鍵。
2.4.2 實例——自定義菜單系統
本例通過菜單編輯器窗口創建一個自定義的菜單實例。
1.設置編輯環境
1)新建VI。選擇菜單欄中的“文件”→“新建VI”命令,新建一個VI,一個空白的VI包括前面板及程序框圖。
2)選擇“編輯”→“運行時菜單…”,打開“菜單編輯器”對話框。
3)選擇菜單欄中的“文件”→“新建”命令,新建空白的菜單編輯文件,如圖2-15所示,自動增加一個默認的空白用戶項。

圖2-15 空白的菜單編輯文件
2.編輯“文件”菜單
選擇默認的空白用戶項,設置“菜單項名稱”為“文件(_F)”,“菜單項標識符”為“文件”。表示“文件”菜單作為菜單項時的顯示出來的實際文本為“文件(F)”。
在圖2-15給出的菜單中,選擇菜單欄中的“編輯”→“插入用戶項”命令或單擊工具欄中的按鈕,添加用戶項。
“文件”菜單下有3項內容,需要添加子項菜單。選擇菜單欄中的“編輯”→“設置為子項”命令或單擊工具欄中的按鈕,將用戶項轉化為子項。
1)第1項是“保存”菜單項,設置如下,設置結果如圖2-16所示。
●“菜單項名稱”為“保存(S)”。表示打開“文件”菜單后按下〈S〉鍵將自動選中該菜單項。
●“菜單項標識符”為“文件_保存”
● 在“快捷方式(組合鍵)”文本框中按〈S〉鍵,則〈Ctrl+S〉自動出現在文本框內,運行時該菜單項指定的組合鍵〈Ctrl+S〉自動出現在菜單項文本“保存(S)”的后面。

圖2-16 “保存”菜單
2)第2項是一個“分隔符”。
選擇菜單欄中的“編輯”→“插入分隔符”命令,添加分隔符。
3)第3項是“退出”菜單項,
●“菜單項名稱”為“退出(_Q)”,表示打開“文件”菜單后,按下〈Q〉鍵將自動選中該菜單項。
●“菜單項標識符”為“文件_退出”。
● 在“快捷方式(組合鍵)”文本框中按〈Q〉鍵,則〈Ctrl+Q〉自動出現在文本框內,運行時該菜單項指定的組合鍵〈Ctrl+Q〉自動出現在菜單項文本“退出(Q)”的后面。
設置結果如圖2-17所示。

圖2-17 “文件”菜單
3.編輯“幫助”菜單
“幫助”菜單作為菜單項時,“菜單項名稱”為“幫助(_H)”,顯示出來的實際文本為“幫助(H)”,“菜單項標識符”為“幫助”,按下組合鍵〈Alt+H〉將自動打開該菜單。“幫助”菜單下有兩項內容:
1)第1項是“幫助”:
●“菜單項名稱”為“幫助(_H)”的幫助菜單項。
●“菜單項標識符”為“幫助_幫助”。
● 在“快捷方式(組合鍵)”文本框中按〈H〉鍵,則〈Ctrl+H〉自動出現在文本框內,運行時組合鍵〈Ctrl+H〉自動出現在菜單項文本“幫助(_H)”的后面,打開“幫助”主菜單后,按下〈H〉鍵將自動選中該菜單項。
2)第2項是“關于”:
●“菜單項名稱”為“關于(_A)”的關于子菜單,打開“幫助”主菜單后,按下〈A〉鍵將自動打開該子菜單。
●“菜單項標識符”為“幫助_關于”。
“關于”子菜單下有“程序”和“更新”兩個菜單項。“程序”菜單項的“作者”兩個菜單項。“程序”菜單項的“菜單項名稱”為“程序”,“菜單項標識符”為“幫助_關于_程序”;“更新”菜單項的“菜單項名稱”為“更新”,“菜單項標識符”為“幫助_關于_更新”。
可以看到,菜單項的“菜單標識符”是按層次進行組織的。可以在程序框圖中對定義的菜單進行編程。
選擇菜單欄中的“文件”→“另存為”命令,保存創建的自定義菜單為“自定義”,如圖2-18所示。

圖2-18 自定義菜單
2.4.3 “菜單”函數
在函數選板中選擇“編程”→“對話框與用戶界面”→“菜單”子選板,如圖2-19所示,菜單子選板中包含了所有對菜單進行操作的函數,用于修改LabVIEW應用程序中的菜單。
用戶可以根據需要進行選用。關于這些節點的詳細使用方法,請參考LabVIEW自帶的幫助文件。

圖2-19 “菜單”子選板
下面介紹“菜單”子選板中的具體菜單函數。
●“插入菜單項”:在菜單或子菜單中插入項名稱或項標識符指定的菜單項。
●“當前VI菜單欄”:返回當前VI的菜單引用引用句柄。
●“獲取菜單項信息”:返回菜單項或菜單欄的屬性。
●“獲取快捷菜單信息”:返回可通過快捷鍵訪問的菜單項。
●“獲取所選菜單項”:返回最后選中的菜單項的項標簽,等待毫秒超時接線端指定的時間,以毫秒為單位。
●“啟用菜單跟蹤”:啟用或禁用菜單項選擇的跟蹤。
●“刪除菜單項”:刪除菜單或子菜單中的菜單項。
●“設置菜單項信息”:設置菜單項或菜單欄的屬性。
- JavaScript高效圖形編程
- Android Studio Essentials
- 少年輕松趣編程:用Scratch創作自己的小游戲
- SQL for Data Analytics
- DevOps入門與實踐
- Mastering OpenCV 4
- QTP自動化測試進階
- Android Native Development Kit Cookbook
- C/C++程序員面試指南
- Android Wear Projects
- The Professional ScrumMaster’s Handbook
- AutoCAD 2009實訓指導
- TMS320LF240x芯片原理、設計及應用
- Emgu CV Essentials
- Hands-On Nuxt.js Web Development