Как можно убрать все панели меню из окна приложения ?

Программирование на Visual Basic for Applications
MItya
Новичок
Новичок
 
Сообщения: 40
Зарегистрирован: 08.06.2005 (Ср) 16:35

Как можно убрать все панели меню из окна приложения ?

Сообщение MItya » 12.04.2006 (Ср) 12:45

:?:
Я рисую формочки в Outlook.
Можно ли как нибудь убрать все панели меню из окна приложения (чтобы пользователи не тыкали куда не нужно). :wink:
На данный момент я могу только дисаблить кнопки, но это не очень красиво.
:?:

Nicky
Постоялец
Постоялец
 
Сообщения: 519
Зарегистрирован: 12.08.2004 (Чт) 12:14

Сообщение Nicky » 12.04.2006 (Ср) 13:00

Может, как везде в офисе: Application.CommandBars...Visible = False ?

MItya
Новичок
Новичок
 
Сообщения: 40
Зарегистрирован: 08.06.2005 (Ср) 16:35

неа

Сообщение MItya » 12.04.2006 (Ср) 13:09

Стандартная панель так не убирается.
К тому же панель меню (файл, правка, вид и т.д.) так по моему не убрать

Nicky
Постоялец
Постоялец
 
Сообщения: 519
Зарегистрирован: 12.08.2004 (Чт) 12:14

Сообщение Nicky » 13.04.2006 (Чт) 7:08

Код: Выделить всё
Sub Макрос1()
  Dim i As Long, aBars() As Boolean
  On Error GoTo er
 
  ReDim aBars(1 To Application.CommandBars.Count)
  For i = 1 To Application.CommandBars.Count
    aBars(i) = Application.CommandBars(i).Enabled
    Application.CommandBars(i).Enabled = False
  Next
  MsgBox "Вуаля!"
 
er:
  For i = 1 To Application.CommandBars.Count
    Application.CommandBars(i).Enabled = aBars(i)
  Next
End Sub


И все прекрасно убирается :)

MItya
Новичок
Новичок
 
Сообщения: 40
Зарегистрирован: 08.06.2005 (Ср) 16:35

а на vbs

Сообщение MItya » 13.04.2006 (Чт) 13:34

а можно все тоже самое на VBs повторить ?

Nicky
Постоялец
Постоялец
 
Сообщения: 519
Зарегистрирован: 12.08.2004 (Чт) 12:14

Сообщение Nicky » 13.04.2006 (Чт) 13:55

А при чем тут vbs?
Начало было
Я рисую формочки в Outlook

В случае vbs, панели чего убирать?

MItya
Новичок
Новичок
 
Сообщения: 40
Зарегистрирован: 08.06.2005 (Ср) 16:35

а вот при чем....

Сообщение MItya » 13.04.2006 (Чт) 14:03

формочки рисую для Outlook на vbs потому что в штатном конструкторе Outlook редактор сделан под vbs.

А проблемку я свою решил так:
Код: Выделить всё
Sub cbars_click
   Dim i
   Dim aBars
   Dim objInsp
   Dim colCB
   Dim objCBB
   On Error Resume Next
   Set objInsp = Item.GetInspector
   Set colCB = objInsp.CommandBars
   for i=1 to colCB.count
'      msgbox i
      set aBars(i) = colCB(i).Enabled
      colCB(i).Enabled = False
   next
   Set objCBB = Nothing
   Set colCB = Nothing
   Set objInsp = Nothing
End Sub

если что напартачил или может лишние строки написал, не ругайтесь.
:D

MItya
Новичок
Новичок
 
Сообщения: 40
Зарегистрирован: 08.06.2005 (Ср) 16:35

кстати !!!!!

Сообщение MItya » 13.04.2006 (Чт) 14:07

раз на то пошло, то может пойти дальше ?

может кто знает как убрать "крестик" закрытия окна приложения ?
:?: :?: :?:

Nicky
Постоялец
Постоялец
 
Сообщения: 519
Зарегистрирован: 12.08.2004 (Чт) 12:14

Сообщение Nicky » 13.04.2006 (Чт) 14:13

Ну не знаю. У меня нет аутлука. Я писал на примере Excel

ULiX
Начинающий
Начинающий
 
Сообщения: 1
Зарегистрирован: 28.04.2006 (Пт) 4:04
Откуда: Комсомольск-на-Амуре

Сообщение ULiX » 28.04.2006 (Пт) 11:36

Nicky большое спасибо. Я как раз мучился с убиранием меню. Свойство visible невозможно было поменять, смена Protection на 0 тоже результатов не дала - только тип ошибки сменился. А вот про Enable не подумал. Обычно оно делает объекты не доступными но видимыми.

У меня дополнительный вопрос. Не сочтите, что мне лень пользоваться поисковиком, (лень просматривать более ста найденых форумов :wink: )

Как перехватит нажатие правой кнопки мыши на панеле Exel, и\или как заменить всплывающее меню при нажатии правой кнопки. Просто там меню конструктора панелей, выпад которого нежелателен.

Как создать своё всплывающее меню, скажем, при клике на созданой форме?
Правда и только Правда!

Nicky
Постоялец
Постоялец
 
Сообщения: 519
Зарегистрирован: 12.08.2004 (Чт) 12:14

Сообщение Nicky » 28.04.2006 (Пт) 13:46

Что-то ничего не получается... Добрался до CommandBars("Built-in Menus").Controls("Панели &инструментов").Controls("&Настройка..."), а дальше - никак. Ни удалить, ни задизаблить... :(


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 45

    TopList