SoloCodigo

Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: makisone en Martes 16 de Marzo de 2004, 21:05

Título: Saber Si Una Ventana Tiene El Foco
Publicado por: makisone en Martes 16 de Marzo de 2004, 21:05
Hola, me gustaria saber como hacer para saber si la ventana de mi proyecto tienes el foco o si no lo tiene. Gracias

SaLuDoS.
Título: Re: Saber Si Una Ventana Tiene El Foco
Publicado por: QliX=D! en Martes 16 de Marzo de 2004, 21:50
Fijate el evento GotFocus y LostFocus
Título: Re: Saber Si Una Ventana Tiene El Foco
Publicado por: makisone en Martes 16 de Marzo de 2004, 22:23
ya probé con esos eventos. Me explico, quiero que cuando tenga el focus el icono que puse al lado del reloj no parpadee, y cuando no tenga el focus que parpadee. Esta lo tengo hecho con un timer, pero solo funciona la primera vez, es decir cuando vuelvo a darle el foco el icono digue parpadeando, es decir que el timer no se para. A ver si alguien me puede ayudar.

SaLuDoS.
Título: Re: Saber Si Una Ventana Tiene El Foco
Publicado por: aura en Miércoles 17 de Marzo de 2004, 11:15
Si lo que quieres es saber en todo momento si tu ventana, o cualquier control tiene en ese momento el foco activo, tienes varias formas de hacerlo:

La primera es recorriendo en un for each cada uno de los controles, existe una propiedad que te refleja si esta activo, pero si tienes muchos controles en un formulario, pues como que no es muy practico.

La segunda opcion es utilizar una propiedad que hay en todos los controles .TAG, es como una varible variant donde puedes almacernar lo que quieras, eso combinado con  dos eventos GOTFOCUS Y LOSTFOCUS, podras saber si tu ventana esta activa en todo momento:

Código: Text
  1.  
  2. Option Explicit
  3.  
  4. Private Sub Form_GotFocus()
  5.     Form1.Tag = 1
  6. End Sub
  7.  
  8. Private Sub Form_Load()
  9.     Form1.Tag = 0
  10. End Sub
  11.  
  12.  
  13.  

asi con una comprobacion
If Form1.Tag = 1 then
       msgbox "Ventana Activa"
elseif form1.Tag = 0 then
       msgbox "Ventana inactiva"
end if

Espero que te sea de ayuda
Título: Re: Saber Si Una Ventana Tiene El Foco
Publicado por: 9tnix en Miércoles 17 de Marzo de 2004, 11:47
Salu2 makisone

Aki te adjunto un ejemplo para saber cuando tu ventana esta activa y cuando no lo esta, faltaria lo siguiente:


'//Aquii asumo que estas haciendo que el icono que pusiste al lado del reloj parpadee usando un Timer llamado Timer1

Timer1.Enabled = True   '//Cuando la vetana no esta activa
Timer1.Enabled = False  '//Cuando la ventana esta b activa

Espero ayude

Un saludo zeekel ®
[KGT]
Título: Re: Saber Si Una Ventana Tiene El Foco
Publicado por: makisone en Miércoles 17 de Marzo de 2004, 16:16
Gracias, me habeis sido de gran ayuda