Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - VBA

Страница: 1 |

 

  Вопрос: контекстное меню для надписи в Access Добавлено: 06.01.04 00:33  

Автор вопроса:  Floyd

Добрый день.

Не получается у меня присвоить контекстное меню для надписи. Т.е. меню вроде есть, в свойстве соответствующем оно присвоено, но не работает, появляется стандартное для формы.

Можно ли в принципе его назначить? Если нельзя, то можно ли как-то скрыть курсор у поля не закрывая доступ к нему?

Access 97.

Спасибо.

Ответить

  Ответы Всего ответов: 4  

Номер ответа: 1
Автор ответа:
 Legik



ICQ: 292375033 

Вопросов: 3
Ответов: 72
 Профиль | | #1 Добавлено: 06.01.04 08:47

Встроенное контекстное меню вызывается для элементов управления, которые могут получить фокус, в противном случае вызывается стандартное. Сие означает, что для надписи вызвать встроенное контекстное меню нельзя.

А вот про поле не совсем понятно ...

Ответить

Номер ответа: 2
Автор ответа:
 Floyd



Вопросов: 4
Ответов: 4
 Профиль | | #2 Добавлено: 06.01.04 09:51

Спасибо.

Суть задачи вот в чем. Я перехватываю событие onclick для надписи и далее произвожу с ней разные действия. Но мне хотелось в зависимости, от допустим, содержимого надписи иметь для нее разные контекстные меню. С надписью не получилось - пробовал с полем, но с столкнулся с одной маленькой неприятностью. Когда поле получает фокус, (а это как я понимаю, происходит при клике, в ней появляется курсор. А он то мне и не нужен. :( Можно ли как-нибудь от него избавиться?

PS: А можно как-нибудь изменить свойства стандартного контрола "надпись", чтобы для него можно было приделать контекстное меню? Я так понимаю, что можно создать собственный activex, но в VBA, наверно нельзя? А просто в  VB можно?

Спасибо.

Ответить

Номер ответа: 3
Автор ответа:
 Legik



ICQ: 292375033 

Вопросов: 3
Ответов: 72
 Профиль | | #3 Добавлено: 06.01.04 12:07

Вон оно че ...

Тогда так.

В обработчике событий "Кнопка вниз", для надписи, добавь этот код:

Private Sub Надпись0_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
  If Button = acRightButton Then CommandBars("m1").ShowPopup
End Sub

, где:

  Надпись0 - имя компонента с надписью

  m1 - имя контекстного меню

Все должно работать!

Ответить

Номер ответа: 4
Автор ответа:
 Floyd



Вопросов: 4
Ответов: 4
 Профиль | | #4 Добавлено: 06.01.04 12:51

Вы спасли меня от неминуемой гибели над Access.

Спасибо большое. Все работает.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам