Access - Inhibir/Restaurar menus Access

 
Vista:

Inhibir/Restaurar menus Access

Publicado por Salo (9 intervenciones) el 27/05/2013 22:01:31
Cuando abro la aplicación deshinibo los menus con el siguiente programa

1
2
3
4
5
DoCmd.RunCommand acCmdWindowHide
CommandBars.ActiveMenuBar.Enabled = False
For I = 1 To CommandBars.Count
     CommandBars(I).Enabled = false
Next I


Al terminar el programa deseo restaurar los menus originales con

1
2
3
4
5
DoCmd.RunCommand acCmdWindowUnHide
CommandBars.ActiveMenuBar.Enabled = true
For I = 1 To CommandBars.Count
     CommandBars(I).Enabled = True
Next I


pero me aparace un menu solo con las opciones Archivo y Ventana y no soy capaz de el menu junto con la barra herramienats de la base de datos

Agradecere cualquier ayuda
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Inhibir/Restaurar menus Access

Publicado por 2pl (53 intervenciones) el 28/05/2013 08:06:09
Con esta función se restablece la barra de menus

1
2
3
4
5
6
7
8
9
Function funTest()
Dim Barra As Object
For Each Barra In Application.CommandBars
   If Barra.Name = "Menu Bar" Then
      Barra.Enabled = True
   End If
Next
MsgBox "Fin"
End Function
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Inhibir/Restaurar menus Access

Publicado por Salo (9 intervenciones) el 30/05/2013 20:44:13
Gracias por tu respuesta, pero aun con este programa sigue sin funcionar. Me sigue apareciendo el menu con las 2 opciones que no puedo quitar. La unica opcion es cerrar la base de datos y volverla a abrir pulsando la tecla Shift.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Norberto
Val: 1.094
Oro
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Inhibir/Restaurar menus Access

Publicado por Norberto (753 intervenciones) el 28/05/2013 13:43:08
Hola.

Si con aplicación y programa de refieres a la bdd te recomendaría que jugaras con las opciones de Inicio (Permitir el uso de menús no restringidos, Permitir el uso de barras de herramientas incorporadas...) y crearas tu(s) propia(s) barra(s) de menús/herramientas. De esta forma en cuanto cierres la bdd volverán a aparecer los menús y barras de herramientas habituales.

Cuando quieras entrar en la bdd a modo de diseño la abres con la tecla Mayúsculas (Shift de toda la vida) pulsada y no se tienen en cuenta dichas opciones.

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Inhibir/Restaurar menus Access

Publicado por Salo (9 intervenciones) el 30/05/2013 20:50:37
Gracias por tu respuesta, pero no tengo ni idea de como hacer todo esto. Te agradeceria me dijeras donde puedo adquirir informacion al respecto.

Si con las opciones de inicio te refieres a la opcion de Herramientas/Inicio, ya tengo configurado para que no me aparezca ni menus ni ventana de base de datos. Ademas en esta ventana llamo para iniciar el programa auna funcion que hace lo indicado anteriormente

DoCmd.RunCommand acCmdWindowHide
CommandBars.ActiveMenuBar.Enabled = False
For I = 1 To CommandBars.Count
CommandBars(I).Enabled = false
Next I

para que no aparezcan las barras de herramientas ni el menu. Cuando termino el programa hago lo inverso para que me vuelva a aparecer los menus y la ventana de base de datos y es entonces cuando no puedo conseguir restablecer el menu original y la barra de herramientas correspondiente a la base de datos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Norberto
Val: 1.094
Oro
Ha mantenido su posición en Access (en relación al último mes)
Gráfica de Access

Inhibir/Restaurar menus Access

Publicado por Norberto (753 intervenciones) el 06/06/2013 13:25:26
Hola de nuevo.

Ante todo disculpa por la tardanza pero he estado un poco liado. Lo primero es que sigo sin saber a qué le llamas programa. Me imagino que a la BdD en sí. Tampoco dices desde dónde lanzas a correr el código que desactiva/activa el menú y barras de herramientas. Dices "en esta ventana" por lo que intuyo que es desde un formulario. No obstante sigo insistiendo en que la mejor opción es en Herramientas->Inicio desactivar todas las casillas y no sólo la de Presentar ventana de la base de datos. Te seguirá apareciendo un menú pero con Archivo: Cerrar y Salir; Ventana con cuatro opciones; y Ayuda. Si este menú te parece demasiado yo suelo crearme para casos similares uno con sólo Archivo: Salir. Si no sabes como hacerlo, me lo dices.

Otra cosa sería que en un momento y desde un formulario quisieras desactivar el menú y barras de herramientas para más adelante volverlas a activar. ¿Cuál es tu caso concreto? Quitar todas las barras desde que abres la bdd hasta que la cierras o durante un proceso concreto de la misma?

Un saludo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Inhibir/Restaurar menus Access

Publicado por Salo (9 intervenciones) el 06/06/2013 14:58:02
En primer lugar agradezco tu atencion por la ayuda que me prestas.

Ciertamente por programa es el codigo VBA de Access que se inicia mediante una macro Autoexec o mediante una funcion que se indica en la opcion de inicio del menu

En este caso lo lanzo desactivando todas las casillas el menu inicio y llamando a una funcion des de aqui.

en esta funcion inhibo las barras de herramientas y el menu con el codigo descrito anteriomente

Docmd.RunCommand acCmdWindowsHide
CommandBars.ActiveMenuBar.Enabled= False
For i=1 To Commandbars.Count
If CommandBars(i).Enable=True then
B(i)=i. 'Guardo la barra de menu
Commandbars(i).Enable= False
Endif
Next i

Hasta ahi todo correcto. Cuando el administrador finaliza el programa deseo que se vuelva a abrir la ventana de bases de datos, el menu convencional de Access y la barra de herramientas correspondiente a la ventana de bases de datos.

Para ello mediante VBA creo el codigo inverso a este habilitando las barras de herramientas y menu

Docmd.RunCommand acCmdWindowsUnHide
CommandBars.ActiveMenuBar.Enabled= True
For i=1 To Ubounb(B)
CommandBars(B(i)).Enable=True 'habilito la barra de herramientas que habia inhibido antes
Next i

Es aqui cuando no se me habilita el menu convencional de Access y me queda un menu con 2 opciones. Tampoco se me habilita la barra de herramientas correspondiende a la pantalla de base de datos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar