Chiudere le finestre secondarie di un programma Gambas lasciando aperto il solo Form principale
Da Gambas-it.org - Wikipedia.
Versione del 27 giu 2024 alle 17:24 di Vuott (Discussione | contributi)
Il caso in questione è quello in cui si ha un programma Gambas in ambiente grafico formato dal Form principale e da altri Form secondari.
Si intende chiudere i Form secondari lasciando aperto il solo Form principale.
Mostriamo un possibile codice per ottenere il risultato richiesto (è necessario attivare anche il Componente gb.desktop):
Public Sub Form_Open() Form1.Show Form2.Show Form3.Show End Public Sub Button1_Click() Dim dw AS DesktopWindow ' Affinché il presente codice sia efficace, è necessario che "tutte" le finestre del programma Gambas abbiano lo stesso "Titolo". ' Pertanto è necessario che la Proprietà ".Text" di ciascun Form non venga modificata, oppure venga assegnato a ciascuna Proprietà ".Text" il medesimo testo. For Each dw In Desktop.Windows ' Per individuare le finestre secondarie del programma Gambas e distinguerle, così dal Form principale, bisognerà verificare che il numero identificativo di ciascuna delle finestre secondarie sia "diverso" dal numero identificativo della finestra principale. ' Inoltre, per distinguere "tutte" le finestre del programma Gambas dalle finestre degli altri eventuali programmi attivi sulla Scrivania, sarà necessario - come già detto sopra - che "tutte" le finestre del programma Gambas abbiano lo stesso "Titolo". If (dw.Id <> FMain.Id) And (dw.VisibleName == FMain.Caption) Then dw.Close Next End