Creare più form uguali

Da Gambas-it.org - Wikipedia.

Alle volte ci si può trovare a dover utilizzare più form che abbiano le stesse caratteristiche. Immaginiamo un gestore di un'azienda che voglia che ogni volta che si seleziona la voce da una lista (magari i suoi dipendenti) appaia un nuovo form contenete i dati della voce in questione. Fare questo significherebbe richiamare n volte una finestra, che abbia le caratteristiche di un form base, dove n è un numero imprecisato di volte.

Ovviamente si capisce che creare infiniti form uguali è oneroso e poco lineare come scelta. Pertanto è possibile molto semplicemente crearne uno di base che possa essere richiamato come layout per le successive finestre.

Vediamo come fare.

Apriamo un nuovo progetto di gambas come visto nella lezione Ciao Mondo.

Ci troveremo davanti all'IDE con il nostro FMain. Preleviamo un button dalla barra dei widget e collochiamo a nostro piacimento all'intero del form. Modifichiamo le propietà name e text dell'oggetto rispettivamente in crea e Crea. Ora spostiamoci sul lato sinistro del nostro IDE dove è possibile visualizzare come è composto il nostro progetto e facciamo doppio click sulla cartella Forms e selezioniamo in successione Nuovo -> Form


Ci verrà chiesto il nome da dare al nuovo form. Noi lo chiameremo FBase proprio per rimarcare il fatto che sarà la copia base di tutte le finestre chiamate successivamente. Ora ci si presenta un nuovo Form vuoto nel quale inseriremo semplicemente un button che ci consenta di chiuderlo. Selezioniamo come abbiamo fatto precedentemente tale oggetto e lo collochiamo a nostro piacimento nel form modificando le proprietà name e text in chiudi e Chiudi.

Ora finalmente abbiamo il nostro form di base. Torniamo su FMain e con un doppio click sulo stesso apriamo l'editor del codice dove inseriremo il seguente codice:

PUBLIC SUB Form_Open()

 DIM hForm AS Form
 hForm = NEW FBase
 hForm.Show

END