• Martes 19 de Noviembre de 2024, 21:23

Autor Tema:  Trabajando Con Formularios  (Leído 1493 veces)

patitofeo

  • Miembro MUY activo
  • ***
  • Mensajes: 145
    • Ver Perfil
Trabajando Con Formularios
« en: Viernes 2 de Septiembre de 2005, 11:27 »
0
:hola:

Le he dado la vuelta al MSDN y no consigo resolver un par de problemillas:

-En primer lugar no se como puedo conseguir que un formulario mantenga el Foco hasta que no se produzca un evento como por ejemplo pulsar un boton.

Es un formulario que debe recoger una serie de valores de configuracion y me gustaria que no se pasara el foco a otros formularios hasta que no pulse el boton de aceptar o cierre el formulario (cancele)

-Por otro lado también he estado intentando conocer los formularios hijos que tengo cargados en un formulario MDIForm.

Es decir, la aplicacion carga el formulario MDI padre, y dependiendo de los botones que pulse en una barra de herramientas ira cargando (load) otros formularios que tienen activa la propiedad MDIChild. Estos formularios podran ir cerrandose (unload) o recargandose de nuevo todas las veces que se quiera.

Me gustaria poder saber desde otro, si un formulario esta cargado (load) o descargado (unload) en un momento dado.

Espero haberme explicado con claridad y que podais ayudarme .

Un saludo y muchisimas gracias por vuestra ayuda e interes

DrakerDG

  • Miembro activo
  • **
  • Mensajes: 72
    • Ver Perfil
    • http://drakerdg.xbot.es/wordpress/
Re: Trabajando Con Formularios
« Respuesta #1 en: Viernes 2 de Septiembre de 2005, 14:55 »
0
:comp: No muy te entendí pero revisa los ejemplos que adjunto a este post (MDIForm.exe) descomprimelo.  Son dos ejemplos de proyectos con MDI Forms.  En el proyecto Texted utiliza el comanto Forms.Count para saber cuantos formularios están aviertos.  :suerte:
El mensaje contiene 1 archivo adjunto. Debes ingresar o registrarte para poder verlo y descargarlo.
Saludos desde Guatemala, C. A.
Electrobotics

jodijo5

  • Miembro HIPER activo
  • ****
  • Mensajes: 518
  • Nacionalidad: pe
    • Ver Perfil
    • http://www.bluetecnologia.com
Re: Trabajando Con Formularios
« Respuesta #2 en: Lunes 5 de Septiembre de 2005, 16:17 »
0
por lo que fui investigando, eso tiene algunas limitaciones, solo puedes detectar que se ah perdido el foco pero con respecto a los formularios de tu aplicacionm para que nunca pierdas el foco de tu aplicacion tienes que ejecutar el formulario llamandolo desde otro asi:
Código: Text
  1. nuncamepierdas.Show vbModal, Me
  2.  
o te doy otra solucion:
usando el api "findwindow" y "setfocus"
Citar
Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
Public Declare Function SetFocus Lib "user32" (ByVal hwnd As Long) As Long
; construyes una aplicacion aparte o si quieres ahi mismo que cada intervalo de tiempo determinado le ponga el foco a tu aplicacion:
en el codigo del formulario
Código: Text
  1.  
  2. public sub timer1_timer()
  3. dim x as long
  4. x=findwindow(vbnullstring,"el titulo del formulario de mi aplicacion")
  5. setfocus x
  6. end sub
  7.  
en un modulo
Código: Text
  1.  
  2. Public Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
  3. Public Declare Function SetFocus Lib "user32" (ByVal hwnd As Long) As Long
  4.  
  5.  

no lo eh probado aun espero que funcione, si tu formulario es formulario hijo necesitas el nombre de la clase tambien se busca por medio de apis pero eso nose.
=============================
Daniel Pomalaza Mendoza
visita el Dinosaurio Azul :-D
http://bluetecnologia.com

patitofeo

  • Miembro MUY activo
  • ***
  • Mensajes: 145
    • Ver Perfil
Re: Trabajando Con Formularios
« Respuesta #3 en: Lunes 5 de Septiembre de 2005, 18:20 »
0
Gracias  a los dos.

La Coleccion Forms la encontre casi nada mas colocar este Post y me sirve perfectamente para conocer los formularios que estan cargados en un momento determinado. Gracias DrakerDG

En cuanto al parametro opcional [Modal] del Metodo Show es perfecto.

No lo conocia y es exactamente lo que andaba buscando. No me di cuenta cuando estube dandome de cabezazos con la ayuda. No he probado las funciones de la API ya que mostrando un formulario como modal todo funciona tal y como queria.  Muchas gracias Jodijo5.

 :gracias: