Implementando uma barra de Menus Lateral


Cansado de usar aquele menu tradicional em sua aplicação Visual Basic ?? Que tal implementar uma barra de menus Lateral ao seu sistema e dar a ela uma aparência mais profissional ?? Quanto custa ??? NADA...

Vou mostrar como usar um pequeno controle ActiveX que encontrei na Web ( infelizmente não me recordo o local de origem de onde fiz o download...). Ele é enxuto e fácil de usar e é GRÁTIS !!! Vamos lá...

Primeiro você vai ter que fazer o download do controle; isto é fácil clique aqui -> VertMenu.zip ( 34 KB )

A seguir copie o controle ActiveX para o diretório \Windows\System e faça o registro do mesmo usando o programa regsvr32.ocx. Se o registro for realizado com sucesso você verá a caixa de mensagem como abaixo:

Agora já podemos usar o controle em nossos projetos.

1- Inicie um novo projeto no VB e faça uma referência no seu projeto ao componente VertMenu em Project | Components... e marque o componente VertMenu como na figura a seguir:

Selecionando o componente MenuVert no seu projeto O ícone do componente na barra de ferramentas

2- Insira o componente no seu projeto:

A seguir insira o controle no formulário padrão ajustando o seu tamanho e largura como desejado.

3- Exibindo as propriedades principais do componente:

Aqui estamos exibindo as propriedades principais do componente.

Iremos usar estas propriedades para configurar o controle para criar os menus laterais personalizados

4- Vamos esboçar o jeitão do menu que desejamos criar para a seguir implementá-lo usando o nosso controle:

Nosso menu terá 4 opções principais sendo que :

  1. O menu Cadastros possui 3 itens
  2. O menu Relatórios possui 2 itens
  3. O menu Utilitários possui 3 itens
  4. O menu sair não possui item

5- Vamos agora configurar as propriedades do controle MenuVert. Na janela Properties- MenuVertical1 clique na opção Custom... e a janela Property Pages irá surgir como exibida a seguir:

Configurando o número de menus , o menu atual e menu inicial O aspecto do controle após a configuração

6- Vamos agora dar um nome e definir os itens para o menu1. Para isto defina a propriedade MenuCur como igual a 1 na aba Menus e selecione a aba MenuObjects e defina a propriedade MenuCaption como o nome - Cadastros.

A seguir atribua o valor 1 a propriedade MenuItemCur e 3 a propriedade MenuItemsMax (pois teremos 3 itens neste menu). Selecione a aba MenuItemObjects e defina o nome do primeiro item em MenuItemCaption - Clientes , atribuindo um icone ao item ( clique em Browse...e selecine o ícone que quiser...). Veja abaixo a sequência e o resultado para o primeiro Menu (Cadastros) e para o primeiro item ( Clientes ).

 
Sequência de etapas para configurar as propriedades de uma opção de Menu e seu Item de menu

Obs: As propriedades MenuItemTag e MenuItemKey não foram utilizadas

Agora é só repetir os passos e configurar as demais opções de Menu e seus itens. Veja abaixo a sequência de menus após a configuração:

A sequência de exibição do menus laterais já configurados

7-) Para terminar precisamos incluir o código para cada opção do menu.

Vamos usar o evento Click do componente MenuVert e checar primeiro qual o menu que foi selecionado - MenuNumber - e depois qual o item do menu clicado usando uma instrução Select/Case para , conforme o cada opção executar a ação desejada. Veja um exemplo de código abaixo:

Private Sub MenuVertical1_MenuItemClick(MenuNumber As Long, MenuItem As Long)

On Error GoTo Trata_Erro

Select Case MenuNumber
    Case 1 ' Cadastros
       Select Case MenuItem
          Case 1
             frmclientes.Show vbModal
          Case 2
             frmfornecedores.Show vbModal
          Case 3
             frmpedidos.Show vbModal
          End Select
    Case 2 'Relatorios
       Select Case MenuItem
          Case 1
              relatorio = "Clientes_Ativos.rpt"
          Case 2
              relatorio = "Pedidos_Pendentes.rpt"
          End Select
    Case 3 'Utilitários
       Select Case MenuItem
          Case 1
              frmbackup.Show vbModal
          Case 2
              Shell "calc.exe", vbNormalFocus
          Case 3
              frmcompacta.Show vbModal
          End Select
    Case 4 'Sair
        Select Case MenuItem
          Case 1
            Unload Me
          End Select
End Select

Exit Sub

Trata_Erro:
MsgBox Err.Number & " - " & Err.Description

End Sub

Executando o projeto e testando duas opções de Menus e itens de menu temos :

Acho que deu para entender como usar o componente !!

Tchau.. ,