Foros del Web » Programación para mayores de 30 ;) » .NET »

Detectar que formulario usas

Estas en el tema de Detectar que formulario usas en el foro de .NET en Foros del Web. Tengo dos formularios en el cual los 2 están abiertos, pero para yo usar el formulario 1 tengo que completar el formulario 2, entonces cuando ...
  #1 (permalink)  
Antiguo 11/05/2012, 11:21
 
Fecha de Ingreso: febrero-2011
Mensajes: 99
Antigüedad: 13 años, 2 meses
Puntos: 10
Detectar que formulario usas

Tengo dos formularios en el cual los 2 están abiertos, pero para yo usar el formulario 1 tengo que completar el formulario 2, entonces cuando tenga abierto el formulario 2 quiero que cada vez que seleccione el formulario 1 el formulario 2 se me ponga en frente de la pantalla (haciendo que no pueda usar el formulario 1).

Ya intente usando el “Handles MyBase.Click”, pero lo malo es que si lo llamo por el TASKBAR o con el ALT + TAB lo puedo usar normalmente, pues sería bueno usar “Me.Enabled = False”.

Ósea lo que sería bueno es detectar si estoy usando ese formulario (pueden ver que cuando usas un formulario el color de su cabecera es diferente como más oscuro y cuando no lo usas es más claro, es por lo cual debe de haber alguna propiedad para detectar eso…)

Gracias!
  #2 (permalink)  
Antiguo 11/05/2012, 11:24
Avatar de bitbow  
Fecha de Ingreso: julio-2006
Ubicación: Distrito Federal
Mensajes: 635
Antigüedad: 17 años, 9 meses
Puntos: 34
Respuesta: Detectar que formulario usas

Hola!

Usa formularios Modales, si no los puedes usar simulalos y listo.

Saludos.
__________________
El ego es el mayor enemigo de un hombre inteligente.
  #3 (permalink)  
Antiguo 11/05/2012, 12:00
 
Fecha de Ingreso: febrero-2011
Mensajes: 99
Antigüedad: 13 años, 2 meses
Puntos: 10
Respuesta: Detectar que formulario usas

Cita:
Iniciado por bitbow Ver Mensaje
Hola!

Usa formularios Modales, si no los puedes usar simulalos y listo.

Saludos.
Hola bitbow!

La verdad no entendí tanto |: ¿Qué es eso de formularios modales, podría ayudarme para lo que busco?

Un efecto parecido al que quiero lograr es cuando usas un MSGBOX, pues prácticamente el formulario no lo puedes usar hasta que termines el MSGBOX, eso es lo que quiero lograr...

Gracias!
  #4 (permalink)  
Antiguo 11/05/2012, 12:34
 
Fecha de Ingreso: abril-2011
Mensajes: 1.342
Antigüedad: 13 años
Puntos: 344
Respuesta: Detectar que formulario usas

Pues justamente el MessageBox es un tipo de formulario modal, es decir, que no te deja utilizar el formulario padre (desde el cual abres el formulario secundario modal) hasta que no lo cierras.

Es sencillo, sólo tienes que usar el método ShowDialog en vez de Show al abrir un formulario y pasarle lo siguiente:

Código vb:
Ver original
  1. Private Sub abrirFormularioModal(ByVal sender As Object, ByVal e As System.EventArgs) Handles formularioPrincipal.Click
  2.    Dim formularioSecundario As New Form()
  3. formularioSecundario.ShowDialog(Me); 'Le pasas una referencia (Me) al formulario principal (de esta manera indicas cual es el formulario padre)
  4. End Sub

El código que haya después de ShowDialog no se ejecuta hasta que no hayas cerrado el formulario al que llamaste y esta llamada (ShowDialog) devuelve un valor que indica si aceptaste o cancelaste la acción en el formulario que habías abierto).

Saludos.
  #5 (permalink)  
Antiguo 11/05/2012, 16:04
Avatar de ramirezmario7  
Fecha de Ingreso: febrero-2008
Ubicación: Medellín
Mensajes: 336
Antigüedad: 16 años, 2 meses
Puntos: 56
Respuesta: Detectar que formulario usas

Hola.
Has como dice alexg88, muestra tu formulario modal

Form2 frm = new Form2();
frm.ShowDialog();
__________________
Mario Ramírez
Desarrollador .NET MCTS
https://www.mcpvirtualbusinesscard.c...nteractivecard
  #6 (permalink)  
Antiguo 11/05/2012, 21:00
 
Fecha de Ingreso: febrero-2011
Mensajes: 99
Antigüedad: 13 años, 2 meses
Puntos: 10
Respuesta: Detectar que formulario usas

Wao! muchas gracias! (:

Esto debería estar en la guía, ya que es algo difícil de encontrar por internet, muy difícil!

Gracias!

Etiquetas: formulario
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:39.