Menu Personalizado

Escrito em Sábado, 20 Setembro 2008 – 19:22 | por Administrador |

Este é um tipo de menu que nos permite economizar tempo, linhas de código e uma melhor arrumação em termos de formulários abertos, uma vez que com este menu apenas precisamos de um formulário aberto. Além de diminuir o número de formulários abertos também diminui o número de botões num menu para abrir cada formulario.
Este tipo de menu, certamente que já existe há algum tempo e já é utilizado por muitos utilizadores do Access.
Então em que consiste este menu?
Vamos criar o menu utilizando uma caixa de combinação que contenha todos os formulários que pretendemos abrir através dele. Ao selecionar uma das opções da caixa de combinação o respectivo formulário é exibido dentro de subformulário. Então vamos começar a fazer o menu passo a passo.

1- Vamos criar uma tabela onde vamos guardar o nome que queremos dar a cada um dos formulários e o nome do formulario que vamos abrir. No exemplo criei a tabela ‘tblmenu’ com os seguintes campos:
Campo        Tipo
Nomedomenu    texto -> Nome que vai ser visto no menu (caixa de combinação)
formulario    texto -> Nome do formulário que vai abrir

Depois introduzimos os dados que no exemplo são os seguintes:

NomedoMenu    Formulario

Contas        formulario1
Depósitos    formulario2
Movimentos    formulario3
Conta-Caixa    formulario4
Conta-Conta    formulario5
Extracto    formulario6

2- Depois vamos criar uma consulta da tabela anterior:
Escolhemos a tabela tblmenu e depois escolhemos os dois campos em que escolhemos a ordenação  ascendente para o nomedomenu para ser mais fácil de encontrar o menu que queremos quando tempos bastantes formulários para abrir. A esta consulta dei o nome de ‘CsMenu’.

3- Vamos criar o formulário ‘Menu’, ou seja escolhemos novo formulário em vista de estrutura. Depois vamos criar uma caixa de combinação e modificar as seguintes propriedades:
- Nº de colunas: 2
- LArgura das colunas: 1cm;0cm;
- origem da linha: csmenu ( que é o nome da consulta criada no ponto anterior )

4- No mesmo formulário vamos criar um subformulário desvinculado do formulário principal(No exemplo dei o nome de menuquadro). É neste formulário que vai ser aberto cada um dos formulários que escolher no menu (caixa de combinação).

5- Agora vamos criar o módulo que nos vai permitir abrir o menu que é selecionado na caixa de combinação no subformulário.
Criamos um módulo (ao qual eu chamei de ‘abrirmenu’) e colamos o seguinte código:

Public Function AtivarMenu(Combmenu As ComboBox, subabrir As SubForm)
Dim abrirform As String
abrirform = Combmenu.Column(1)
subabrir.SourceObject = abrirform
subabrir.LinkChildFields = “”
subabrir.LinkMasterFields = “”
End Function

Depois vamos às propriedades da caixa de combinação no formulário Menu e no evento Depois de Actualizar colocamos a função criada: =ativarmenu([Menu];[menuquadro]) em que ‘Menu’ é o nome da caixa de combinação e ‘menuquadro’ o nome do subformulário.

E finalmente o menu está pronto a utilizar. É só testar e usar. Espero que tenham gostado desta dica.
Download: Menu

Abaixo uma imagem do menu.

Menu Personalizado

Menu Personalizado

RSS feed | Trackback URI

12 Commentários »

Comentário by Pedro
2009-01-05 02:00:01

Coloquei um botão CANCELAR no formulário2 e gostaria que ao clicar, o SubForm voltasse para posição original, ou seja, ficasse em branco e com a combo vazia também. Como construir essa Function?

Grato,

Pedro

 
Comentário by Administrador
2009-01-05 14:37:19

Olá Pedro,

Não entendi bem o que pretende fazer. Pelo que percebi quer por um botão no subformulário que faça com que o menu retorne ao estado inicial, é isso?

Comentário by Pedro
2009-01-05 16:22:43

É isso mesmo! No cancelamento da operação, o subformulário voltaria ao estado inicial, bem como a combo.

Grato.

 
 
Comentário by Nixon
2009-05-04 13:25:40

è possível, fazer este menu, porém utilizando as teclas de atalho conforme o menu anterior.

 
Comentário by bruno pontes
2009-10-06 12:21:58

boas consegui fazer o menu seguindo os passos aqui descritos, porem os meus formularios tem caixas de combinação inter ligadas e nos formularios funcionam mas quando passo para os formulariomenu, deixam de funcionar. que posso fazer?

 
Comentário by andeson
2009-10-13 19:25:53

nao sei como perguntar mais eu queria saber como faz
para faser um proama executavel no access que poelomenos trabale com horas e preço

 
Comentário by Bruno
2010-07-10 19:58:42

Cara Show de Bola, só gostaria de um exemplo ou alguma dica que fosse com botões ao invés de uma combo.

abraço

 
Comentário by Bruno
2010-07-19 22:10:01

Cara como fazer o mesmo só que ao invéz de combo com botões?

 
Comentário by LOEMIR NASCIMENTO
2011-01-01 19:51:28

PRECISO DE UMA AJUDA: FIZ UM SISTEMA DE BANCO DE DADOS NO ACCESS E PRECISAVA DE QUANDO SELECIONASSE UMA DETERMINADA PESSOA NA CAIXA DE VERIFICAÇÃO NO FORMULÁRIO, ABRISSE A FOTO CORRESPONDENTE.

 
Comentário by Agnaldo
2011-04-27 18:31:12

O amigão gostei de mais dessa dica,mas eu nao consegui exito…poderia me mandar passo a passo?eu nao entendo muito de access mas tenho força de vontade se puder me ajudar nisso ai ficaria agradecido.

 
Comentário by Agnaldo
2011-04-27 18:43:30

Minha duvida esta aqui,como posso salvar um formulario com dois nomes distintos?

3- Vamos criar o formulário ‘Menu’, ou seja escolhemos novo formulário em vista de estrutura. Depois vamos criar uma caixa de combinação e modificar as seguintes propriedades:
- Nº de colunas: 2
- LArgura das colunas: 1cm;0cm;
- origem da linha: csmenu ( que é o nome da consulta criada no ponto anterior )

4- No mesmo formulário vamos criar um subformulário desvinculado do formulário principal(No exemplo dei o nome de menuquadro). É neste formulário que vai ser aberto cada um
dos formulários que escolher no menu (caixa de combinação).

 
Comentário by Claudio
2011-11-02 22:20:26

Olá,

Achei fantástico seu menu, apenas gostaria de abrir relatórios também e quando coloquei o nome do relatório no meu não funcionou, poderia dar uma dica?

abs,

Claudio

 
Nome (obrigatório)
Email (obrigatório - não é publicado)
Website
O seu comentário (Diminuir | Aumentar)
Pode usar <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> nos comentários.

Apresentacao

Avatar

Obrigado pela sua visita.
Subscreva o feed para não perder nenhuma mensagem.

Aqui no blogue vou disponibilizar exemplos de como trabalhar com o Microsoft Access e também tirar dúvidas a quem solicitar. Mais

Quer subscrever?

 Subscrever ou, subscrever por email:
Introduza o seu email:


Anúncios