FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
menu lateral y el ratonnn
Hola a todos,
tengo una aplicacion mdi con un menu lateral. Dicho menu lo escondo o muestro segun la posicion del raton. Cuando el raton lo acerco a la parte izquerda de la pantalla, saco el menu lateral y al sacar el raton fuera del menu lateral lo escondo. El problema es que muchas veces no me hace caso y tengo que mover el raton hasta la derecha del todo para que se entere y esconda el menu lateral. ¿sabeis si puedo decirle que procese mejor los eventos del raton de alguna manera?? codigo: En la ventana principal MDI, tengo en el evento onFormMouseMove: FormMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin Update; if self.ActiveMDIChild<>nil then if (Mouse.CursorPos.x<=30) and (Not menu_Lateral_fijo) then ver_panel_de_menu(true) else ver_panel_de_menu(false); Update; end; y en cada formulario Child en el evento FormMouseMove hago lo mismo El problema es que no se entera cuando estando en los ventanas Child deberia esconder el formulario. ¿Sabeis como procesar mejor el evento para que se entere??? Gracias. David. |
#2
|
||||
|
||||
yo mismo me contestoo
Vale, chicos... al final la solucion la tengo yo.
De todas formas la comento por si alguien tuviera algun problema parecido: Como el problema era que las ventanas hijas no se enteraban, lo que he hecho es poner un Timer en el formulario principal y alli mismo compruebo las coordenadas del raton y proceso: procedure TForm.Timer2Timer(Sender: TObject); var position:TPoint; begin if MDIChildCount=0 then ver_panel_de_menu(true) else begin getcursorpos(position); if (position.x<=5) then ver_panel_de_menu(true) else if (position.x> Panel_lateral.Width) then ver_panel_de_menu(false); Update; end; end; De todas formas gracias al foro. |
|
|
|