powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Чёртов CommandBar
6 сообщений из 6, страница 1 из 1
Чёртов CommandBar
    #32724571
sposad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Люди, подскажите, кто сталкивался!
Есть Sub, следующего вида:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
Public Sub HideMenu(strName As String, blVisHide As Boolean)
Dim cb As CommandBar
Set cb = CommandBars(strName)
If blVisHide Then
    cb.Visible = True
Else
    cb.Visible = False
End If
End Sub

Ну здесь в качестве параметров передаются имя панели и boolean открыть/скрыть.
Так вот она то работает, то нет. В отладке всё проходит как надо, но меню появляются и скрываются с логикой, мне непонятной, по крайней мере это не то, что должно быть по коду.
К тому же если на кнопку панели повесить public function из общего модуля, то на двух, совершенно одинаковых кнопках это работает/не работает по разному : на одной работает, а на другой пишет, что такой функции нет. А если функции привязывать через макрос, то всё Ок. Вообще это заметил давно и пользовался макросами, но надоело и хочется разобраться.

Спасибо.

ps: А2000 SP-3 (по крайней мере так было написано на диске:)
...
Рейтинг: 0 / 0
Чёртов CommandBar
    #32724622
Roma R
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй

DoCmd.ShowToolbar имяПанели [, режим]

Метод ShowToolbar использует следующие аргументы.

Аргумент Описание

имяПанели Строковое выражение, представляющее допустимое имя встроенной панели инструментов Microsoft Access или специальной панели инструментов, созданной пользователем.
Если вызвать программу Visual Basic, содержащую метод ShowToolbar, из библиотечной базы данных, Microsoft Access проводит поиск панели инструментов с указанным именем сначала в библиотечной базе данных, а затем в текущей базе данных.
режим Одна из следующих встроенных констант:

acToolbarYes (да)
acToolbarWhereApprop (в обычном режиме)
acToolbarNo (нет)

Если оставить данный аргумент пустым, подразумевается значение по умолчанию (acToolbarYes).
...
Рейтинг: 0 / 0
Чёртов CommandBar
    #32724921
Alexanderik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
только сегодня ворошил в проекте. и вот те на. те же проблемы.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
Function CBToolbarShow(strCBarName As String, _
                       blnVisible As Boolean, _
                       Optional lngPosition As Long = msoBarTop) As Boolean
                  
    ' This procedure displays or hides the command bar specified in the 
    ' strCBarName argument according to the value of the blnVisible 
    ' argument. The optional lngPosition argument specifies where the 
    ' command bar will appear on the screen. 
   
   Dim cbrCmdBar As CommandBar
      
   On Error GoTo CBToolbarShow_Err
   
   Set cbrCmdBar = Application.CommandBars(strCBarName)
   
    ' Show only toolbars. 
   If cbrCmdBar.Type > msoBarTypeNormal Then
      CBToolbarShow = False
      Exit Function
   End If
    ' If Position argument is invalid, set to the default 
    ' msoBarTop position. 
   If lngPosition < msoBarLeft Or lngPosition > msoBarMenuBar Then
      lngPosition = msoBarTop
   End If
   
   With cbrCmdBar
      .Visible = blnVisible
      .Position = lngPosition
   End With
   
   CBToolbarShow = True

CBToolbarShow_End:
   Exit Function
CBToolbarShow_Err:
   CBToolbarShow = False
   Resume CBToolbarShow_End
End Function
Пользуюсь давно и безоговорочно !

Удаление бара
Код: plaintext
1.
2.
3.
Function CBDeleteCommandBar(strCBarName As String) As Boolean
   On Error Resume Next
   Application.CommandBars(strCBarName).Delete
End Function

А это вдогонку информация о барах

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
Function CBPrintCBarInfo(strCBarName As String) As Variant
    ' This procedure prints (to the Debug window) information 
    ' about the command bar specified in the strCBarName argument 
    ' and information about each control on that command bar. 
   
   Dim cbrBar                     As CommandBar
   Dim ctlCBarControl             As CommandBarControl
   Const ERR_INVALID_CMDBARNAME   As Long =  5 
   
   On Error GoTo CBPrintCBarInfo_Err
   
   Set cbrBar = Application.CommandBars(strCBarName)
   
   Debug.Print "CommandBar: " & cbrBar.Name & vbTab & "(" _
      & CBGetCBType(cbrBar) & ")" & vbTab & "(" _
      & IIf(cbrBar.BuiltIn, "Built-in", "Custom") & ")"
   For Each ctlCBarControl In cbrBar.Controls
      Debug.Print vbTab & ctlCBarControl.Caption & vbTab & "(" _
         & CBGetCBCtlType(ctlCBarControl) & ")"
   Next ctlCBarControl

CBPrintCBarInfo_End:
   Exit Function
CBPrintCBarInfo_Err:
   Select Case Err.Number
      Case ERR_INVALID_CMDBARNAME
         CBPrintCBarInfo = "'" & strCBarName & _
            "' is not a valid command bar name!"
      Case Else
         CBPrintCBarInfo = "Error: " & Err.Number _
            & " - " & Err.Description
   End Select
   Resume CBPrintCBarInfo_End
End Function
...
Рейтинг: 0 / 0
Чёртов CommandBar
    #32724956
Hummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемые, на сайте АлексекК найдёте может быть полезную вещь по панельм пользователя в аксесе, а может и не полузную....
...
Рейтинг: 0 / 0
Чёртов CommandBar
    #32726163
sposad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо всем ответившим.

2Hummer

Искал я там. Может плохо искал ...
...
Рейтинг: 0 / 0
Чёртов CommandBar
    #32726751
Hummer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Плохо искали. Вот полезность ...
Далее - III.Полезности -> Меню и тулбары.

Это просто учёт меню, ну и там кода есть много интересного.....
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Чёртов CommandBar
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]