Manualandia
a- a+

Aggiungere FORM MDI secondari

Abbiamo detto che un form MDI principale(MDIparent) può avere uno o più form figli chevengono definiti tali nella finestra Object Explorer. Lafinestre Object Explorer contiene sempre almeno un formfiglio. Una implementazione fissa di form MDI principale conun numero prestabilito di form figli è di piùsemplice gestione ma limita le possibilità MDI. E'meglio dunque prevedere un numero di form secondari variabilie quindi lasciare all'utente la devisione di quanti formMDI secondari utilizzare.

 

Per gestire i form secondari di un progetto,occorre utilizzare a livello di form una delle varibiliriportate di seguito:

·         un oggettodi tipo Collection che memorizzi i form secondari comeoggetti;

·         un indicedi form secondari che tenga traccia del numero totale deiform secondari creati via via.Il programma deve incrementareil valore di questo indice ogni volta che viene creato unnuovo form secondario e non lo decrementerà qundoverrà chiuso un form figlio, in modo tale da forniresempre un identificativo univoco per ogni form secondario.E' consigliabile porre tale numero identificativo comeparte dell'etichetta del form secondario.

 

Vediamo ora come aggiungere ad un progetto unform secondario.

1.       Per prima cosa occorredichiarare una variabile locale che crei un nuovo formsecondario;

2.       incrementare poi di 1il valore dell'indice del form secondario;

3.       caricare il formsecondario mediante il comando Load object;

4.       a questo puntovisualizzare il nuovo form secondario attraverso l'usodel metodo Show( );

5.       infine aggiungere ilnuovo form secondario alla serie di oggetti servendosi delmetodo Add(oggettoDaAggiungere).

 

Il codice che segue è un esempio digestore di evento associato al comando new, che crea evisualizza un nuovo form secondario.

 

 

Private Sub mnuNew-Click( )Dim MDIchildForm as New_MDIchild'incrementa la variabile di livello del formMDIchildIndex = MDIchildIndex + 1Load MDIchildFormMDIchildForm.Caption = "MDI dipendente"Str(MDIchildIndex"MDIchildForm.ShowColMDIform.Add MDIchildFormEnd Sub

 

Il codice dichiara una variabile locale(individuare qual è) che crea un nuovo formsecondario, incrementa di 1 l'indice di livello del formsecondario, carica il form, inserisce il valore desideratonella caption, visualizza il nuovo form e lo aggiunge allaserie di oggetti relativi.