2.8.Создание меню
2.8.8.Связь меню с формой



Меню можно отображать не только при выборе элементов на рабочем листе, но и связывать их с элементами управления, расположенными на форме. Продемонстрируем это на примере (листинг 2.12). На форме разместите над­пись, в модуле формы и стандартном модуле наберите представленный да­лее код. Теперь при щелчке на надписи отобразится меню, состоящее из двух команд — Раз и Два.

 

 

Листинг 2.12.а Контекстное меню. Модуль формы

Const MenuName As String = "MyMenu"

 

Private Sub UserForm_Initialize()

Dim cb As CommandBar

Set cb = Application.CommandBars.Add(_

Name:=MenuName,_

Position:=msoBarPopup,_

Temporary:=True)

With cb.Controls.Add(Type:=msoControlButton)

.Caption = "Ðàç"

.Style = msoButtonCaption

.OnAction = "DoSomething1"

End With

With cb.Controls.Add(Type:=msoControlButton)

.Caption = "Äâà"

.Style = msoButtonCaption

.OnAction = "DoSomething2"

End With

End Sub

 

Private Sub Label1_Click()

Application.CommandBars(MenuName).ShowPopup

End Sub

 

Private Sub UserForm_QueryClose(_

                 Cancel As Integer, CloseMode As Integer)

On Error Resume Next

Application.CommandBars("MyMenu").Delete

On Error GoTo 0

End Sub

 

Листинг 2.12.б Контекстное меню. Стандартный модуль

Sub DoSomething1()

MsgBox "Раз"

End Sub

 

Sub DoSomething2()

MsgBox "Два"

End Sub



  
ПОИСК
МОЯ КНОПКА
Контакты
МБОУ "Лицей им.Атякшева"

628260 г. Югорск, ул. Ленина 24,
ХМАО-Югра, Тюменская область
Телефон: 8 (34675)2-48-30
Факс: 8 (34675)2-48-30



89222596815 nady_er@mail.ru
Карта
sample map