Visual Basic - cerrar una ventana desde otra

Life is soft - evento anual de software empresarial
 
Vista:

cerrar una ventana desde otra

Publicado por birkoof (6 intervenciones) el 26/07/2005 16:57:37
Hola a todos:
Tengo un proyecto con un main del cuál mediante un botón salen diferentes formularios.
Lo que pretendo esque desde un botón SALIR situado en el main, se puedan cerrar los formularios hijos.

Muchas gracias...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:cerrar una ventana desde otra

Publicado por Erlin Briceño (6 intervenciones) el 26/07/2005 17:34:39
Hay varias maneras en teste momento se me ocurren dos

1_. En el sub de el boton de cerrar los form escribes
unload Fom1
Siendo Form1 el nombre del formulario y asi con todo lo que quieras cerrar

2_. escribes la función "End" y cierras todo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:cerrar una ventana desde otra

Publicado por birkoof (6 intervenciones) el 26/07/2005 17:40:54
Muchas gracias, pero no es eso exactamente lo que yo quiero hacer
quiero hacer un módulo para que me cierre el formulario activo,
ya que tengo unos 30 formularios y si tengo que poner el nombre de cada uno me volvería loco.
es algo así como pasarle un string con el nombre del formulario hijo a un módulo y cuadno pulsamos cerrar del main recoger ese string y cerrar el formulario hijo activo

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil
Val: 14
Ha aumentado 1 puesto en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

RE:cerrar una ventana desde otra

Publicado por SuNcO (599 intervenciones) el 26/07/2005 23:00:21
Si hablas de un MDI entonces este codigo te va a servir

Pon 2 botones, uno para abrir formularios y otro para cerrar el activo. Tambien 1 formulario extra que lleva la propiedad MdiChild = True. Por ultimo un label que es donde se va a ir poniendo el hwnd de la ventana activa

En el form1 puse esto para actualizar el hwnd :

Private Sub Form_GotFocus()
MDIForm1.Label1 = Me.hWnd
End Sub

El formulario inicial es el Mdi y este es su codigo :

Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Const WM_CLOSE = &H10

Private Sub Command1_Click()
Set Formulario = New Form1
Load Formulario
Formulario.Show
End Sub

Private Sub Command2_Click()
For i = 0 To Forms.Count - 1
If Forms(i).hWnd = Label1 Then
SendMessage Forms(i).hWnd, WM_CLOSE, 0, 0
Exit Sub
End If
Next i
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:cerrar una ventana desde otra

Publicado por birkoof (6 intervenciones) el 27/07/2005 18:03:50
Gracias tiu lo intentaré
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar