Jump to content

Recommended Posts

Posted

Boas,

Já por aqui ando há uns tempos mas este vai ser o meu primeiro post.

Estou a fazer um projecto em vb.net e no menu do programa uso imagens como se fossem botões.

Já tenho várias imagens e estive a tentar fazer com que quando o rato estiver por cima da imagem o fundo desta mude para uma cor (por exemplo, os botões na parte de cima do fórum.

Posso fazê-lo usando um MouseHover/MouseLeave para cada controlo mas isso requere vários subs e é pouco atractivo.

Estive a tentar usar apenas um ou dois subs para controlar todas as imagens ao mesmo tempo mas falhei miseravelmente.

Fiz algo do género:

Dim imagem() As Windows.Forms.PictureBox

Private Sub verificarato() Handles Me.mousemove
        For x = 1 To 3
            imagem = Me.Controls.Find("pic" & x, False)
            funcao(imagem)
        Next
End Sub

Private Sub ratoEmCima() Handles imagem.MouseHover
        imagem.backcolor = Color.LightSteelBlue
End Sub

Private Sub ratoSaiu() Handles imagem.MouseLeave
        imagem.backcolor = Color.Transparent
End Sub

Mas não consegui pois o "Handles imagem.MouseHover" não funciona devido a qualquer coisa com o WithEvents que não percebi bem:

Handles clause requires a WithEvents variable defined in the containing type or one of its base types.

Estive a ver o que eram WithEvents mas não percebi bem.

Agradecia se alguém me pudesse ajudar com isto.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.