1.4.1.3 設定加速鍵和熱鍵
您可以設定加速鍵,與前文的例程相同,只需在輸入時,將“&”放到需要指定為加速鍵的字母前面,該字母將被用下劃線顯示,運行時,按“Alt+加速鍵字母”可以激活該菜單條。設定熱鍵也是很方便的,只需在Object Inspector中該菜單條的ShortCut屬性值段的下拉菜單中,為它選定一個熱鍵組合即可。在運行時,通過“Ctrl+熱鍵字母”來激活菜單條。加速鍵和熱鍵並不矛盾,您可以同時指定它們。
1.4.1.4 使用Menu Designer的彈出式菜單
Menu Designer中還有一個彈出式菜單,它提供了高頻菜單創建命令,並可以對模板選項進行快速訪問。在菜單設計器窗口中單擊右鍵,或將光標停在菜單設計器上,按Alt-F10,可以調出Menu Designer的彈出式菜單。使用Menu Designer的彈出式菜單可以向菜單增加菜單項、刪除菜單項等操作,還可以對標准主菜單模板進行增加、刪除、插入等操作。
為菜單編制功能,可以雙擊菜單條,或在特定菜單條的Events頁上,雙擊它響應的事件的值段,Delphi將回到代碼編輯器,光標停在事件對應的事件處理過程中,您可以為菜單編制實現任務的代碼。
如果您已經為Speed Bar上的加速按鈕編制了事件處理過程,而需要把相應的菜單項連接到事件處理過程上,則只需在該菜單項的Events頁的OnClick事件後,輸入事件處理過程的名稱即可。這樣單擊菜單項便和按動加速按鈕便實現同樣的功能。
1.4.1.5 創建嵌套菜單
創建嵌套菜單也是重要的手段。Delphi的嵌套菜單風格是嵌套菜單列在它上層菜單的邊上,如圖1.11所示:
創建嵌套菜單,把加亮條移到它的上層菜單條上,按Ctrl+右行鍵,將彈出子菜單,就可以按照同上所述的方法進行創建工作了。
通過拖--放操作,可以實現菜單條的重新定位。用鼠標左鍵按住某一菜單條,移動到菜單的某一位置,釋放左鍵,菜單條即得到重新定位。菜單設計器允許菜單條在頂層下移動位置,支持菜單條在嵌套菜單中移進、移出,甚至可以將菜單條在各個頂層菜單下屬的菜單間移動與定位。
圖1.11 創建嵌套菜單的界面
1.4.1.6 給菜單加提示(Hint)
在菜單中加提示是很好的習慣。它使得您的用戶在運行菜單功能前,可以對菜單的任務有一個簡略的了解。在菜單條任一項的值段按F1,可以查閱在線幫助,在幫助的正文中找到OnHint並查閱它的例程,將DisplayHint等方法的例程Copy到您的程序中。然後,在菜單條的Hint屬性中加入提示正文,運行時當用戶將鼠標移到菜單項時,在窗體的底部狀態行中會出現Hint屬性中的提示信息。
1.4.1.7 菜單的其它屬性簡介
菜單還有其它的一些屬性。Enabled屬性決定菜單是否被禁用,這在編程中可以實現一定情況下不允許用戶使用某項菜單。Checked屬性表征了菜單項的開關情況,當Checked為True時,菜單條的前面會出現選中標志。Visible屬性控制菜單隱藏與否。設置這一屬性可以實現多版本的菜單。被隱藏的菜單項以及它的子菜單都是不可見的,或是不可訪問的。
Popup Menu在用Menu Designer時是完全相同的。只不過它在運行時和主菜單的激活形式有所不同:它是用鼠標的右鍵激活的。彈出式菜單在一定的窗口范圍內激活,所以必須將窗口和彈出式菜單聯系起來。在設計完PopupMenu後,須在Name屬性中為它命名,然後把這個名稱賦給窗體的PopupMenu屬性。這樣,窗口會接收右鍵輸入,並激活彈出式對話框。
1.4.2 使用計時器部件Timer
在System頁上,還有一個(Timer計時器)部件,它能夠有規律地觸發OnTimer事件,發送信息給應用程序。它是編制應用程序時最為重要的部件之一。
1.4.2.1 Timer的重要屬性
Enabled屬性表示了計時器打開還是關閉;用Interval屬性設置兩個OnTimer事件間的間隔,單位是毫秒,也即千分之一秒。將間隔置為0相當於關閉計時器,Interval的最大允許值是32767,也即32.767秒。