程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Access數據庫 >> 關於Access數據庫 >> VBA自定義菜單和菜單欄(二)

VBA自定義菜單和菜單欄(二)

編輯:關於Access數據庫

5.1 Add方法用於CommandBarControls對象

新建一個 CommandBarControl 對象並添加到指定命令欄上的控件集合。

Expression.Add ( Type , Id , Parameter , Before , Temporary )

l         expression必需。該表達式返回一個 CommandBarControls 對象。

l         TypeVariant類型)可選。添加到指定命令欄的控件類型。可以為下列 MsoControlType常量之一:

常量

說明

msoControlButton

命令按鈕

msoControlEdit

文本框

msoControlDropdown

下拉列表

msoControlComboBox

組合框

msoControlPopup

彈出菜單

l         Id Variant 類型)可選。指定內置控件的整數。如果該參數為1 ,或者忽略該參數,將在命令欄中添加一個空的指定類型的自定義控件。

l         Parameter Variant 類型)可選。對於內置控件,該參數用於容器應用程序運行命令。對於自定義控件,可以使用該參數向 Visual Basic 過程傳遞信息,或用其存儲控件信息(類似於第二個 Tag 屬性值)。

l         BeforeVariant 類型)可選。表示新控件在命令欄上位置的數字。新控件將插入到該位置控件之前。如果忽略該參數,控件將添加到指定命令欄的末端。

l         TemporaryVariant 類型)可選。設置為True 將使新命令欄為臨時命令欄。臨時命令欄在關閉容器應用程序時刪除。默認值為 False

5.2向命令欄添加自定義菜單控件

以下代碼示例將您通過編程方式添加的菜單名稱添加到“工作表”菜單欄中。例如,此代碼會將菜單名稱“New Menu”添加到“工作表”菜單欄中。

注意:您可以根據需要為該菜單指定任何名稱。

Sub Menu_Create()

Dim myMnu As Object

   Set myMnu = CommandBars("Worksheet menu bar").Controls. _

      Add(Type:=msoControlPopup, before:=3)

   With myMnu

   ' "&" 用以指定快捷鍵字符 (相當於Alt+M).

      .Caption = "New &Menu"

   End With

End Sub

5.3禁用命令欄上的菜單控件

禁用的菜單控件在命令欄中顯示為灰色,並且不可用。以下示例禁用“New Menu”菜單:

Sub Menu_Disable()

   CommandBars("Worksheet menu bar").Controls("New &Menu").Enabled = False

End Sub

5.4啟用命令欄上的菜單控件

以下代碼示例啟用您在“禁用命令欄上的菜單控件”一節中禁用的 New Menu 菜單:

Sub Menu_Disable()

   CommandBars("Worksheet menu bar").Controls("New &Menu").Enabled = True

End Sub

5.5刪除命令欄上的菜單控件

以下代碼示例從“工作表”菜單欄中刪除您在“向命令欄添加自定義菜單控件”一節中創建的“New Menu”菜單:

Sub Menu_Delete()

   CommandBars("Worksheet menu bar").Controls("New &Menu").Delete

End Sub

5.6還原命令欄上的菜單控件

以下代碼示例還原“工作表”菜單欄上的內置“圖表”菜單欄:

Sub Menu_Restore()

Dim myMnu As Object

   Set myMnu = CommandBars("Chart")

   myMnu.Reset

End Sub

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved