• Viernes 8 de Noviembre de 2024, 15:41

Autor Tema:  Al Cerrar El Mdi, Que Queden Cerrados Todos  (Leído 1359 veces)

jeobel

  • Nuevo Miembro
  • *
  • Mensajes: 13
    • Ver Perfil
Al Cerrar El Mdi, Que Queden Cerrados Todos
« en: Viernes 26 de Octubre de 2007, 22:01 »
0
Quiero por ejemplo que al cerrar el MDI en el evento unload me cierre
todos los child que eventulmente podrian no haberse cerrado de forma
incorrecta por un estilo  modeless o alguno que se dejo sin cerrar y
que deja en el administrador de tarea de window abierto el ejecutable aunque
se cierre aparentemente, ESTA ES MI IDEA
 
    Dim frm as form
    for each frm in MDI
    If TypeOf  frm is MDI then
         unload frm
    End if
   NEXT
 el error q me manda es "que se requiere un objeto"  que es frm
 ****
 Parecido a este
 ****
Sub Limpiar(ByVal frm As Form)
     For Each c In frm
     If TypeOf c Is TextBox Or TypeOf c Is ComboBox Then
           c.Text = ""
    End If
    If TypeOf c Is OptionButton Or TypeOf c Is CheckBox Then
           c.Value = False
        End If
    Next
End Sub

es q utilizo esto en el evento MDI UNLOAD

 Unload Me
 Unload BuscarExamen
 Unload BuscarMedicos
 Unload formResultadosBaar
 Unload formResultadosCultivoyAntibi
 Unload ListaExamenes
 Unload ListaPatologia
 Unload MedicosActivos
 Unload Login
 Unload MedicosActivos
 etc, etc que resulve pero no es lo optimo
 denme otra idea

cpmario

  • Miembro HIPER activo
  • ****
  • Mensajes: 629
    • Ver Perfil
    • http://www.cpimario.com
Re: Al Cerrar El Mdi, Que Queden Cerrados Todos
« Respuesta #1 en: Sábado 27 de Octubre de 2007, 05:52 »
0
Código: Text
  1. Sub UnloadAllForms()
  2.    Dim frm As Integer
  3.    frm = Forms.Count
  4.  
  5.    Do While frm > 0
  6.       Unload Forms(frm - 1)
  7.       If frm = Forms.Count Then Exit Do
  8.       frm = frm - 1
  9.    Loop
  10. End Sub
  11.  
:comp: