專題介紹 - 自訂功能選單(Run-Time Menu)及客製化其對應功能

雖然說最近設計程式的趨勢,大多需要符合觸控化的使用需求,
不外乎就是平面化的人機介面、易操作的按鈕、簡單明瞭的圖表。

但是有時候在設計系統的時候,還是有需要 Menu Bar 的情況出現:


因此這篇文章簡易的描述如何自訂自訂功能選單及客製化其對應功能。


圖片程式版本:LabVIEW 2014


以下圖片皆可點選放大來看!
首先選擇 Edit >> Run-Time Menu...


接著就會跳到 Menu Editor,同時載入預設的 Menu 設定值

此時在上方 tool bar 處選擇 Custom

編輯器便會載入空白的選單

此時:
Item Name:功能選單上顯示的文字
Item Tag:該功能的標籤文字,預設等同於 Item Name
Enabled / Checked:致能/選擇,在此專題暫不介紹
Shortcut:快速鍵,使用合併按鈕定義
※建議所有設計的 Tag 名稱不可以重複,避免後續使用上的困難

在此先簡單的輸入一些測試用的文字及快速鍵:

接著可以按下 tool bar 上的 + 來新增其他的功能,或是 x 來刪除不需要的功能

接著可以利用 tool bar 的箭頭符號來移動各功能選單的順序及階層

最後將編輯好的功能選單存檔即可

關閉編輯器時,系統會詢問是否取代原本的功能選單,按下YES即可

到此,編輯功能選單的工作已經完畢,接下來要實作當按下功能選單後所對應的功能。
首先繪製一個 while loop + event 的架構:

接著新增 event 如下圖,記得選擇 Menu Selection(User),而不是(App)喔!

這個 event 就是當按下自訂的功能選單時所觸發的事件,
此時使用觸發輸出的 ItemTag作為後面 Case 的判斷條件,
並且在Case內部實作程式碼或是QMH命令。
這也就是為什麼前面建議 ItemTag 不要重複的原因。
上圖包含當選擇了 Exit 之後會停止迴圈,選擇了其他命令則會跳出我們選擇了哪個命令的提示視窗。

實際執行便可以看到上方的功能選單已經變成剛剛自定義的。

同時選單的順序及階層也變成自定義的樣式。


當按下了 Open Test File 就會彈出提示視窗

當然最後按下 Exit 就會離開程式。
至此,完成了簡易的自訂功能選單及其對應功能的範例。
當然大家可以繼續擴寫這個程式,或是把這個方式套用到原本的SSM或是QMH範本上。

此範例僅介紹利用預設編輯器完成功能選單的編輯,後續的專題會談到如何動態的用程式碼來增減及控制功能選單。