Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
¿ Cómo Puedo Cambiar El Foco Entre Formularios Desde Código ?
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje ¿ Cómo Puedo Cambiar El Foco Entre Formularios Desde Código ? 
 
Hola!.

Seguramente es que no lo entendí a la primera.
Si tengo dos formularios y quiero pasar el foco de un formulario a otro.¿ Como debo hacerlo ?.

He encontrado esto:

Citar:

Window Activation & Deactivation

To become the official active window, i.e. the window that is returned by the Application.ActiveWindow property, a window:
Must be a top-level window.
Or must implement the Form_Activate event handler if it is an embedded window.

When a control gets the focus, then its window becomes the active window, provided this window can become the current active window as explained above.
If its window cannot become the current active window, then the parent window of this window is tried, and so on, until a top-level window is reached.
Activating a window sends a Deactivate event to the old current active window, and an Activate event to the new one.
When the application is iconified, the current active window is deactivated. When the application is uniconified, then the current active window is reactivated again.


Cuando hablamos del foco siempre nos referimos a cambiar el foco a un componente concreto de la ventana activa, ¿ no ?.

Por otro lado dice que si un control toma el foco, su contenedor padre en este caso, una ventana o formulario pasa a ser la ventana activa.
Pues intente esto, pero tampoco va.

Public Sub Form_Open()
  
  Form1.PictureBox1.SetFocus()
  
End
 


¿ No puedo hacer nada en el Activate del segundo formulario para solucionarlo ?.

Supongo que top-level window, se refería a ventanas embebidas.

¿ A que se refiere cuando dice que la ventana esta iconificada ?. Que esta en la barra del panel y no se muestra en el escritorio ?

Saludo
 




===================
Gambas Básico
“Si no puedes explicar algo de forma sencilla, entonces es que tú no lo entiendes bien.” Albert Einstein
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: ¿ Cómo Puedo Cambiar El Foco Entre Formularios Desde Código ? 
 
Revisa las propiedadesde la clase window. y de la colección Windows
Ahí puedes buscar una ventana por título y hacerla activa.
 



 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: ¿ Cómo Puedo Cambiar El Foco Entre Formularios Desde Código ? 
 
Shell escribió: [Ver mensaje]
Si tengo dos formularios y quiero pasar el foco de un formulario a otro.¿ Como debo hacerlo ?.


Tienes que utilizar el metodo ".Activate()" de la Clase DesktopWindow .

Puedes usar la Clase DesktopWindow activando los componentes gb.desktop y gb.desktop.x11
 



 
última edición por vuott el Miercoles, 03 Septiembre 2014, 11:16; editado 2 veces 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: ¿ Cómo Puedo Cambiar El Foco Entre Formularios Desde Código ? 
 
Ok, haré lo que decís y lo pruebo esta tarde.  

Saludos
 




===================
Gambas Básico
“Si no puedes explicar algo de forma sencilla, entonces es que tú no lo entiendes bien.” Albert Einstein
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: ¿ Cómo Puedo Cambiar El Foco Entre Formularios Desde Código ? 
 
Un ejemplo sobre la Clase DesktopWindow lo escribÍ aquÍ:
http://www.gambas-es.org/viewtopic.php?f=5&t=3976
 



 
vuott - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: ¿ Cómo Puedo Cambiar El Foco Entre Formularios Desde Código ? 
 
Vuott:

El componente gb.desktop.x11 no existe en la 3.5.4 estable.
Pero si existe gb.desktop y gb.desktop.gnome y con este ultimo componente me funciona bien el ejemplo.

Saludos
 




===================
Gambas Básico
“Si no puedes explicar algo de forma sencilla, entonces es que tú no lo entiendes bien.” Albert Einstein
 
Shell - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
Ocultar¡Este tema fue útil?

 

Elegir valoración:                       

Media de valoración Valoración mínima Valoración máxima Número de valoraciones
0.00 0 0 0
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes ¿cómo Puedo Mostrar Todos Los Formulario... jsoto61 General 12 Martes, 08 Diciembre 2009, 12:31 Ver último mensaje
jsoto61
No hay nuevos mensajes Cambiar El Código Desde Textbox kotonfree General 1 Domingo, 19 Diciembre 2010, 01:42 Ver último mensaje
razaAztk
No hay nuevos mensajes Paso De Variables Entre Formularios [SOLUC... whisper General 16 Miercoles, 08 Abril 2015, 10:53 Ver último mensaje
vuott
No hay nuevos mensajes Devolver El Foco A Un Textbox Desde Otro F... Tasagore General 12 Lunes, 15 Agosto 2016, 11:39 Ver último mensaje
Tasagore
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
No puede descargar archivos
No puede publicar eventos en el calendario