(http://www.snapdrive.net/files/202548/vb60/menu.JPG)
Como podran ver en la imagen al mover el mouse por el form muestra el menu flotante... del systray, pero esto solo sucede cuando el form es un poco grande .. si es pekeño no se ve este error...
uso este codigo : http://www.snapdrive.net/files/202548/vb60/ejemplo.rar
tambien probe un modulo de Leandro ... y sigue con el mismo detalle de mostrar el menu al mover el mouse por esa region del form...
a alguien le ha pasado o sabe como corregir esto... gracias de antemano
Hola, a los menues popup les podes decir la ubicacion X,Y donde queres que aparescan...
saludos.
si lo se .. pero en este caso no necsito que se muestre en ninguna parte del form... puesto que es solo para el systray...
esto es lo que uso para ello:
Public Sub Eventos(X As Single)
Dim msg As Long
If (Form1.ScaleMode = vbPixels) Then
msg = X
Else
msg = X / Screen.TwipsPerPixelX
End If
Select Case msg
Case WM_RBUTTONUP
Call SetForegroundWindow(Form1.hwnd)
'Si hacemos Click con el boton derecho mostramos el popup Menu
Form1.PopupMenu Form1.menu
Case WM_LBUTTONUP
Call SetForegroundWindow(Form1.hwnd)
'Si hacemos Click con el boton izquierdo mostramos el popup Menu
Form1.PopupMenu Form1.menu
End Select
End Sub
y lo llamo con:
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Eventos X
End Sub
y aki esta el detalle como es Form_MouseMove de alguna manera esta lo muestra en el form principal.. algo que no deberia pasar.
salu2.
El codigo para manejar los eventos del systray esta mal, por eso.
hola si yo tambien siempre tuve ese problema si utilizaba el hwnd del formulario, nose, una rapida para salir de paso, puede ser utilizando un control por ejemplo
systray.hwnd = Form1.Picture1.hwnd
y llamar desde el evento
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Eventos X
End Sub
Saludos
yo nunca tuve problemas,proba usar la clase de cobein cSystray que es re facil...
saludos.
Cita de: cobein en 12 Diciembre 2008, 22:10 PM
El codigo para manejar los eventos del systray esta mal, por eso.
de seguro porke si estuviese bien no mostraria ese detalle ;D
Cita de: seba123neo en 13 Diciembre 2008, 15:55 PM
yo nunca tuve problemas,proba usar la clase de cobein cSystray que es re facil...
saludos.
pues si lo tengo y lo revise ... esta muy.. pero muy bien ... tanto que me gustaria ponerlo en mi aplicacion .. pero el detalle es que es muy grande ...tiene algo de 69 kb... es mas pesado que mi propia aplicacion ;D...
pero si no keda bien con algun otro metodo mas simplificado ... no habra mas solucion que usarlo..
bueno gracias por sus respuestas..
Saludos.
Cita de: bywaypero el detalle es que es muy grande ...tiene algo de 69 kb
jaja si vieras los proyectos grandes de verdad...aparte cuando se genera el .exe no te suma 69kb , te suma un poco menos de la mitad....eso de que te muestra el menu mientras esta normal el formulario,es porque debes usar el evento
Resize del formulario para saber cuando esta normal y caundo esta minimizado y asi mostrar o no el menu...
saludos.
bueno .. con la sugerencia de Leandro de tomar el hwind de un control para el systray ... quedo mejor que antes. ;D
bueno seba lo del tamaño ... si vi proyectos grandes y complejos... pero este en particular es pekeñisimo y por lo que hace y tiene ... solo para el systray se llevaria muchos kb. ;D ;D ;D
es la misma razon por la cual solo necsito que sea lo mas simplificado posible ... lo del systray ;D
y lo de Resize no lo estoy usando .. es mas ni bordes tiene el form de mi aplicacion y no es tan pekeño la interfaz (por la imagen de fondo) ;D
bueno gracias por sus comentarios .