Visual Basic - Como parar el efecto??

Life is soft - evento anual de software empresarial
 
Vista:

Como parar el efecto??

Publicado por Diego (2 intervenciones) el 03/08/2002 16:23:50
Con el siguient código mi programa reacciona cuando hago doble clic sobre el icono q he creado al lado del reloj de windows.

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Dim Result As Long
Dim msg As Long
If Me.ScaleMode = vbPixels Then
msg = X
Else
msg = X / Screen.TwipsPerPixelX
End If
Select Case msg
Case WM_LBUTTONDBLCLK
Form2.Show
End Select
End Sub

Mi objetivo es mostrar Form2 y poder trabajar con él, pero el resultado es q aparece Form2 parpadeando y sin reaccionar al los eventos del teclado hasta q no pincho sobre él con el ratón.

¿Cómo quito ese efecto y puedo cargar normal Form2?

Agradezco las soluciones aportadas x Alvaro Marín, pero no m han servido...

Si lo llamo en forma modal ( Form2.Show VbModal ), se hace visible el formulario pero no se queda activo.

Entonces pruebo a pasarle el foco a continuación...
(quedando el código así)
Form2.Show VbModal
Form2.SetFocus
...y en este caso sigue apareciendo el formulario inactivo, y es cuando lo descargo este, que ejecuta la linea (Form2.SetFocus) dandome error al ya no estar.

Me puedes sugerir alguna otra solución o decirme dnd sta el problema??

Si alguien puede aportar algo a este problema estaría muy agradecido.

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

dale en el mouse down

Publicado por Jim Adam (120 intervenciones) el 05/08/2002 00:20:17
Debe programar eso en el evento form_mousedown, no en em mousemove, devido a q el mouse se encuentra sobre la superficie es que continuamente ejecuta la subrutina y constantemente se llama al formulario 2

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

con Form_Mousedown no funciona

Publicado por Diego (2 intervenciones) el 05/08/2002 18:01:39
He probado ha quitar form_mousemove y poner en su lugar el evento form_mousedown con el mismo código tal como m has acosejado, Jim.
En ste caso no reacciona cuando hago doble clic sobre el icono, q es lo q yo necesito, apart d q al hacerlo muestre correctament Form2. Agradezco no obstant tu colaboración.

Alguien puede darm alguna solución a mi problema??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Ya lo probe y esto funciona de la ...

Publicado por Jim Adam (120 intervenciones) el 07/08/2002 10:19:12
'ctray es el control system tray icon control de microsoft, es para poner _
el icono
'Esto en el form1:
Private Sub ctray_MouseDown(Button As Integer, Id As Long)
Load Form2
End Sub

'Esto en el form2
Private Sub Form_Load()
Show
Me.SetFocus
Hide
Show 1
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Parche1 para la ayuda

Publicado por Jim Adam (120 intervenciones) el 07/08/2002 10:23:05
'en el form1:
'Es para evitar el error cuando cierre la ventana form2
On error resume next
Load Form

Se que te servirá
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar