Leudassdf Posted April 30, 2012 at 11:03 PM Report #452400 Posted April 30, 2012 at 11:03 PM Boas pessoal. Como posso colocar um menustrip aparecendo e depsaparecendo conforme se o rato estiver na posiçao onde esta o menustrip ele mostra, caso nao esteja ele coloca o menustrip em "invisivel" Ja tentei com o mouse move mas nas verificaçoes nao consegui perceber entre que valores deveria estar. se alguem puder deixar uma ideia sobre como fazer agradecia Private Sub Form1_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Me.MouseMove If MousePosition.Y > RectangleShape2.Location.Y And MousePosition.X >= RectangleShape2.Location.X Then RectangleShape2.Visible = True Else RectangleShape2.Visible = False End If End Sub O if provavelmente nao estara bem. Quem puder ajudar agradeço. Abraço
ribeiro55 Posted May 2, 2012 at 09:19 AM Report #452625 Posted May 2, 2012 at 09:19 AM O if está errado na medida em que verificas apenas se a coordenada do rato é superior à coordenada da shape, o que faria com que qualquer posição acima da sua coordenada, mas para além dos seus limites, disparasse a parte verdadeira do if. A estructura Rectangle tem um método para determinar intersecção, que podes usar para as verificações. Mais, terás de fazer a verificação a outro nível. Usa MousePosition.X e MousePosition.Y para determinar coordenadas absolutas, e um pouco de matemática para calcular as coordenadas iniciais, com a posição do form e containers até ao sítio que pretendes. Isto porque o evento MouseMove do Form deixa de responder quando o rato passa por cima de outro objecto. Sérgio Ribeiro "Great coders aren't born. They're compiled and released""Expert coders do not need a keyboard. They just throw magnets at the RAM chips"
Leudassdf Posted May 2, 2012 at 07:37 PM Author Report #452797 Posted May 2, 2012 at 07:37 PM O if está errado na medida em que verificas apenas se a coordenada do rato é superior à coordenada da shape, o que faria com que qualquer posição acima da sua coordenada, mas para além dos seus limites, disparasse a parte verdadeira do if. A estructura Rectangle tem um método para determinar intersecção, que podes usar para as verificações. Mais, terás de fazer a verificação a outro nível. Usa MousePosition.X e MousePosition.Y para determinar coordenadas absolutas, e um pouco de matemática para calcular as coordenadas iniciais, com a posição do form e containers até ao sítio que pretendes. Isto porque o evento MouseMove do Form deixa de responder quando o rato passa por cima de outro objecto. Penso que entendi. vamos tentar aplicar
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now