none
mostrar mensagem

    Pregunta

  • amigos ... sou novato e estou tentando aprender vb .net...

    em um menu... qdo o user passa o mouse em determinada opção...

    qual propriedade me diz que o usuario esta com o mouse na opcação 1,2 etc ??

    para eu poder colocar na barra de status do menu um descritivo da opcao ???

    desde ja muito obrigado

    viernes, 11 de mayo de 2007 20:17

Respuestas

  • Carlos,

     

    Se estamos falando de um MenuStrip, você pode fazer o seguinte exemplo que eu montei aqui:

    - Adicione um MenuStrip ao seu form;

    - Adicione um StatusBar ao seu form;

    - Crie alguns itens de menu normalmente;

    - Para cada item de menu, você vai colocar na propriedade Tag aquilo que você quer que apareça no statusbar;

    - Então você vai adicionar os dois métodos abaixo ao seu form:

     

    ' Este método vai ser usado no evento MouseEnter de todos os itens de menu

    Private Sub MostrarStatusBar(ByVal sender As Object, ByVal e As EventArgs)

     

            If TypeOf sender Is ToolStripMenuItem Then

                StatusBar1.Text = (DirectCast(sender, ToolStripMenuItem)).Tag

            End If

     

    End Sub

     

    ' Este método vai ser usado no event MouseLeave de todos os itens de menu

    Private Sub ApagarStatusBar(ByVal sender As Object, ByVal e As EventArgs)

     

             StatusBar1.Text = ""

     

    End Sub

     

    - Agora, volte ao form, selecione um item de menu, vá a janela de propriedades e clique no botão que tem a imagem de um raio (Events). Selecione o evento MouseEnter e aponte nele o método MostrarStatusBar. Vá ao evento MouseLeave e aponte o evento ApagarStatusBar. Você vai ter que repetir isso para todos os itens de menu, ou você pode selecionar todos segurando o botão control enquanto clica nos itens de menu e então ir na janela de propriedades apontar os eventos como expliquei acima.

     

    - Execute o aplicativo e a medida que você for andando com o mouse no menu, ele vai mostrar a mensagem no StatusBar.

     

    Abraços,
    Francisco
    OK, Computer - http://thespoke.net/blogs/fbcjunior/default.aspx

    sábado, 12 de mayo de 2007 10:35
  • Carlos,

     

    Poderia ser por código também, você poderia percorrer o menu e ir assinando os eventos. Teria que ser uma rotina recursiva, porque um menu pode ter sub itens de menu e assim sucessivamente.

     

    Quanto a livros, tem alguns posts aqui no forum mesmo onde as pessoas vão sugerindo livros e apostilas, como este aqui:

    http://forums.microsoft.com/msdn-br/ShowPost.aspx?PostID=846571&SiteID=21

     

    Se algum dos posts solucionou sua dúvida, por favor, marque-o como resposta desta thread. Acima de cada post você verá um botão "Marcar como resposta", basta clicar neste botão em um ou mais posts que solucionaram sua dúvida. Isso é importante para considerarmos esta thread como resolvida.

     

    Ao fazer isto, você usará o Forum da maneira esperada quando ele foi concebido e assim contribuírá para o bom funcionamento de outras features desta ferramenta.

     

    Obrigado!

     

    Abraços,
    Francisco
    OK, Computer - http://thespoke.net/blogs/fbcjunior/default.aspx

    lunes, 14 de mayo de 2007 16:45

Todas las respuestas

  • Carlos,

     

    Se estamos falando de um MenuStrip, você pode fazer o seguinte exemplo que eu montei aqui:

    - Adicione um MenuStrip ao seu form;

    - Adicione um StatusBar ao seu form;

    - Crie alguns itens de menu normalmente;

    - Para cada item de menu, você vai colocar na propriedade Tag aquilo que você quer que apareça no statusbar;

    - Então você vai adicionar os dois métodos abaixo ao seu form:

     

    ' Este método vai ser usado no evento MouseEnter de todos os itens de menu

    Private Sub MostrarStatusBar(ByVal sender As Object, ByVal e As EventArgs)

     

            If TypeOf sender Is ToolStripMenuItem Then

                StatusBar1.Text = (DirectCast(sender, ToolStripMenuItem)).Tag

            End If

     

    End Sub

     

    ' Este método vai ser usado no event MouseLeave de todos os itens de menu

    Private Sub ApagarStatusBar(ByVal sender As Object, ByVal e As EventArgs)

     

             StatusBar1.Text = ""

     

    End Sub

     

    - Agora, volte ao form, selecione um item de menu, vá a janela de propriedades e clique no botão que tem a imagem de um raio (Events). Selecione o evento MouseEnter e aponte nele o método MostrarStatusBar. Vá ao evento MouseLeave e aponte o evento ApagarStatusBar. Você vai ter que repetir isso para todos os itens de menu, ou você pode selecionar todos segurando o botão control enquanto clica nos itens de menu e então ir na janela de propriedades apontar os eventos como expliquei acima.

     

    - Execute o aplicativo e a medida que você for andando com o mouse no menu, ele vai mostrar a mensagem no StatusBar.

     

    Abraços,
    Francisco
    OK, Computer - http://thespoke.net/blogs/fbcjunior/default.aspx

    sábado, 12 de mayo de 2007 10:35
  • Francisco...

    muito obrigado pela ajuda...

    demorei para entender mais consegui consertar...

    gostaria de saber se tudo isto q vc me passou pode ser via codigo digitado mesmo dentro do form..

    tb se vc tem um bom livro de vb .net para me indicar ...

    grande abraço...

    lunes, 14 de mayo de 2007 15:25
  • Carlos,

     

    Poderia ser por código também, você poderia percorrer o menu e ir assinando os eventos. Teria que ser uma rotina recursiva, porque um menu pode ter sub itens de menu e assim sucessivamente.

     

    Quanto a livros, tem alguns posts aqui no forum mesmo onde as pessoas vão sugerindo livros e apostilas, como este aqui:

    http://forums.microsoft.com/msdn-br/ShowPost.aspx?PostID=846571&SiteID=21

     

    Se algum dos posts solucionou sua dúvida, por favor, marque-o como resposta desta thread. Acima de cada post você verá um botão "Marcar como resposta", basta clicar neste botão em um ou mais posts que solucionaram sua dúvida. Isso é importante para considerarmos esta thread como resolvida.

     

    Ao fazer isto, você usará o Forum da maneira esperada quando ele foi concebido e assim contribuírá para o bom funcionamento de outras features desta ferramenta.

     

    Obrigado!

     

    Abraços,
    Francisco
    OK, Computer - http://thespoke.net/blogs/fbcjunior/default.aspx

    lunes, 14 de mayo de 2007 16:45