Differenze tra le versioni di "Eliminare una scheda da una TabStrip"
Riga 33: | Riga 33: | ||
<Font Color=gray>' ''Elimina quindi la scheda corrente:''</font> | <Font Color=gray>' ''Elimina quindi la scheda corrente:''</font> | ||
TabStrip1[TabStrip1.Index].Delete | TabStrip1[TabStrip1.Index].Delete | ||
+ | <Font Color=gray>' ''oppure anche: '''''TabStrip1.Current.Delete'''</font> | ||
Wend | Wend | ||
End | End |
Versione attuale delle 05:40, 3 ago 2023
Per eliminare una scheda (o linguetta) da una TabStrip, è sufficiente utilizzare il Metodo ".Delete" della scheda individuata, purché tale scheda sia priva di Oggetti grafici su di essa.
Bisogna tenere conto anche che non è possibile eliminare tutte le schede da una TabStrip, non essendo possibile l'esistenza di una TabStrip senza schede.
Esempio pratico
Supponiamo di avere una TabStrip con un certo numero di schede contenenti (tutte o alcune) anche eventualmente alcuni Oggetti grafici.
Si provvederà a ripulire ciascuna scheda attiva della TabStrip dagli eventuali Oggetti grafici, su di esse presenti, e successivamente la scheda medesima.
Public Sub Button1_Click() Dim ob As Object ' Viene eliminato dalla scheda attiva corrente ogni eventuale oggetto ivi presente: For Each ob In TabStrip1[TabStrip1.Index].Children ob.Delete Next ' Se vi è più di una scheda attiva, la scheda corrente viene eliminata dalla "TabStrip": If TabStrip1.Count > 1 Then TabStrip1[TabStrip1.Index].Delete ' oppure anche: If TabStrip1.Count > 1 Then TabStrip1.Current.Delete End
Se si vogliono eliminare con un ciclo le schede, lasciando - ad esempio - la sola prima scheda conservandone anche gli eventuali Controlli su di essa presenti:
Public Sub Button1_Click() Dim ob As Object TabStrip1.Index = TabStrip1.Count - 1 While TabStrip1.Index > 0 ' Se c'è un'altra scheda oltre la prima, si accede al ciclo per eliminarla For Each ob In TabStrip1[TabStrip1.Index].Children ' Elimina gli eventuali oggetti grafici presenti sulla scheda corrente: ob.Delete Next ' Elimina quindi la scheda corrente: TabStrip1[TabStrip1.Index].Delete ' oppure anche: TabStrip1.Current.Delete Wend End