Chiudere tutte le finestre aperte da un applicativo

Da Gambas-it.org - Wikipedia.
Vai alla navigazione Vai alla ricerca

Chiudere tutte le finestre, generate da un programma, chiudendo il Form principale

Se, chiudendo il Form principale, si intende chiudere anche tutte le finestre secondarie eventualmente generate dall'applicativo, si può utilizzare l'istruzione:

Public Sub Form_Close()

' Assegna alla Proprietà ".MainWindow" della Classe Application la finestra principale dell'applicativo:
 Application.MainWindow = Me

End

che fa diventare la finestra corrente quella principale: quando viene chiusa la finestra principale, vengono chiuse tutte le altre finestre e l'applicazione.

E' possibile usare anche la Classe Windows, che ritorna una collezione di tutte le finestre create dall'applicativo principale:

Public Sub Form_Open()

 Dim w As Window

 With w = New Window
   .Move(0, 0, 100, 100)
   .Show
 End With

 With w = New Window
   .Move(200, 100, 100, 100)
   .Show
 End With

 With w = New Window
   .Move(300, 200, 100, 100)
   .Show
 End With

 Me.Center

End


Public Sub Form_Close()

 For Each w As Window In Windows
   w.Close
 Next

End


Chiudere tutte le finestre, generate da un programma, da una finestra secondaria

Se si intende chiudere tutte le finestre, generate da un programma, chiudendo una sua finestra secondaria, si dovrà sollevare l'Evento "_Activate()".