| 
	
		|  Autor | Tema: Fomulario Modal  (Leído 4,253 veces) |  
	| 
			| 
					
						| TheGhost(Z) 
								
								 Desconectado 
								Mensajes: 230
								
								   | 
 
Hola como puedo devolver un valor al cerrar una ventana modal 'Formulario Principal Dim UsuarioLegitimo As BooleanDim F As New FormComprobarUsuario
 
 UsuarioLegitimo = F.Show VbModal
 
 
Cuando llego esta parte del codigo se carga un nuevo FormConprobarUsuario, que por cierto tiene dos TextBox (Usuario y contraseña), y dos Botones (aceptar y cancelar)... el obejetivo es que si, despues de validar, el usuario es correcto devuelva True y sino False. Alguna idea, he intentado muchas maneras pero no me salen resultados..    
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| Kasi 
								
								 Desconectado 
								Mensajes: 76
								
								   | 
 
Prueba a intentar plantearlo al reves, es decir, desde el "padre" abres un nuevo form (que podria denominarse como un hijo) o algo asi.Ahora plantea el problema al reves, en vez de intentar obtener X resultado desde el padre al cerrar el hijo, hazlo al contrario.
 
 Cuando se cierre el hijo, obtienes la referencia hasta el padre y le dejas el resultado donde tu quieras, y luego ya sigues con el script con normalidad.
 
 No se si me explico bien.
 
 Un saludo
 
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| TheGhost(Z) 
								
								 Desconectado 
								Mensajes: 230
								
								   | 
 
He intentado eso. Pero son varias ventanas secundarias que llaman cada uno a un FormComprobarUsuario es decir...
 Cada ventanaSecuntaria esta creado con New FormSecundario y cada una de estas llama a un New FormComprobarUsuario
 
 Si lo hago al revés como dices.. como sabre que FormSecundario és el que le llamó??
 
 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| BlackZeroX 
								Wiki  Desconectado 
								Mensajes: 3.158
								
								 
								I'Love...!¡.
								
								
								
								
								
								     | 
 |  
						| 
								|  |  
								|  |  En línea | 
 
 The Dark Shadow is my passion. |  |  |  | 
			| 
					
						| TheGhost(Z) 
								
								 Desconectado 
								Mensajes: 230
								
								   | 
 
Estudiaré el código. les aviso, luego. |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  |  |  | 
			| 
					
						| Tokes 
								
								 Desconectado 
								Mensajes: 140
								
								
								
								
								
								   | 
 
No sé si entendí bien. A ver:
 Si se crea un formulario en forma modal no se puede hacer nada más con los otros formularios, puesto que el formulario en forma modal toma el control total. Entonces, no puede haber varios formularios modales a la vez ¿O sí?
 
 En el caso de que solo pueda haber un formulario modal a la vez ¿Porqué no pones una variable pública en un módulo BAS? Esa variable será tipo boolean y sólo podrá ser modificada por un formulario modal a la vez.
 
 Si me equivovo, mil disculpas. Saludos.
 |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| TheGhost(Z) 
								
								 Desconectado 
								Mensajes: 230
								
								   | 
 
BlackZeroX , muchas gracias. aunque no es tan simple como un InputBox, pero funciona y es lo que importa. aquí mostraré el código para los que andaban en lo mismo. cambié algunas cocitas pues ya depende para la finalidad del uso. En el FormularioPrincipal Private WithEvents FrmLogin As frmUserDim Loggeado As Boolean
 
 Private Sub cmdAutenticar_Click()
 Set FrmLogin = New frmUser
 With FrmLogin
 .Show vbModal
 End With
 Set FrmLogin = Nothing
 
 If Loggeado = True Then '// codigo una ves loggeado //
 Me.BackColor = vbGreen
 Else
 Me.BackColor = vbRed
 End If
 End Sub
 
 
 
 Private Sub FrmLogin_Resultado(e As Boolean)
 If e = True Then
 Loggeado = True
 Else
 Loggeado = False
 End If
 End Sub
En el formulario: Login Public Event Resultado(ByRef e As Boolean)Dim Loggeado As Boolean
 
 Private Sub cmdComprobar_Click()
 With Me
 If .txtUser = .txtPassword Then
 Loggeado = True
 Unload Me
 Else
 MsgBox "Incorrecto. Inténtelo nuevaente", vbExclamation
 End If
 End With
 End Sub
 
 Private Sub Form_Load()
 Loggeado = False
 End Sub
 
 Private Sub Form_Unload(Cancel As Integer)
 If Loggeado = True Then
 RaiseEvent Resultado(True)
 Else
 RaiseEvent Resultado(False)
 End If
 End Sub
Gracias...   |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  | 
			| 
					
						| BlackZeroX 
								Wiki  Desconectado 
								Mensajes: 3.158
								
								 
								I'Love...!¡.
								
								
								
								
								
								     | 
 
correciones Logicas!¡.  Private Sub Form_Load()    Loggeado = FalseEnd Sub  
 se obvia ya que cualquier Boolean siempre al inicio es False!¡. Aqui otras!¡.  Private Sub FrmLogin_Resultado(e As Boolean)    If e = True Then        Loggeado = True    Else        Loggeado = False    End IfEnd Sub  
 por  Private Sub FrmLogin_Resultado(e As Boolean)        Loggeado = eEnd Sub  
 y  Private Sub Form_Unload(Cancel As Integer)    If Loggeado = True Then        RaiseEvent Resultado(True)    Else        RaiseEvent Resultado(False)    End IfEnd Sub  
 por  Private Sub Form_Unload(Cancel As Integer)        RaiseEvent Resultado(Loggeado )End Sub  
 Ducles Lunas!¡. |  
						| 
								|  |  
								|  |  En línea | 
 
 The Dark Shadow is my passion. |  |  |  | 
			| 
					
						| goldarg 
								
								 Desconectado 
								Mensajes: 13
								
								
								
								
								
								   | 
 
Te traigo una solucion simple: Crea un Modulo1 y declara En el form FormComprobarUsuario Private Sub cmdValidar_Click()If txtusuario.text="TuUsuario" and txtpass.text="Tupass" Then
 logueo = 1
 Else
 logueo = 2
 End If
 Unload Me
 End Sub
 
 Private Sub Form_Load()
 logueo= -1
 End Sub
Y en el boton que llames al FormComprobarUsuario pones dim f as formset f=new FormComprobarUsuario
 f.show 1
 Select Case logueo
 case -1
 msgbox "Cancelado"
 case 1
 msgbox "Logueado"
 case 2
 msgbox "No Logueado"
 End Select
Me funcionó bien, pero no se si eso es lo que buscabas |  
						| 
								|  |  
								|  |  En línea | 
 
 |  |  |  |  |  
 
	
 
 
				
					
						| Mensajes similares |  
						|  | Asunto | Iniciado por | Respuestas | Vistas | Último mensaje |  
						|   |   | Hacer un jinternal frame modal Java
 | Jepe auquilla | 2 | 4,405 |  25 Marzo 2011, 18:45 pm por sapito169
 |  
						|   |   | Fomulario encuesta que no continue si contesta la primera pregunta. Desarrollo Web
 | jprex03 | 1 | 2,096 |  2 Abril 2012, 01:20 am por #!drvy
 |  
						|   |   | controlar formulario web modal con webbrowser Programación Visual Basic
 | serjefazo | 4 | 4,504 |  16 Septiembre 2014, 17:56 pm por Piratex
 |  
						|   |   | Problema con ventana modal Desarrollo Web
 | Grave | 2 | 3,990 |  21 Mayo 2014, 18:46 pm por Grave
 |  
						|   |   | Incluir carousel modal, como lo hago? Desarrollo Web
 | Pitufete | 3 | 4,499 |  11 Octubre 2014, 10:00 am por Pitufete
 |    |