Visual Basic Simple
FBI Properties Browser
Elenca le Proprietà contenute in un insieme Properties
Sincronizza Indice
Sincronizza Indice
Scarica il progetto
Scarica il progetto
Scarica il testo dell'articolo
Testo dell'articolo
Stampa l'articolo
Stampa l'articolo

Difficoltà: 3 / 5

Il controllo FBI Properties Browser consente l'elencazione di tutte le proprietà contenute in un insieme Properties. È studiato per l'analisi in fase di runtime di quelle strutture complesse, ricche di proprietà, dove l'unica soluzione ragionevole era utilizzare cicli di enumerazione oppure sfruttare le Espressioni di Controllo dell'IDE di Visual Basic.

Figura 1Si presenta come un controllo relativamente ingombrante, anche se la sua dimensione è adattabile. La dimensione minima concessa è 1935 twips di larghezza e 1860 twips di altezza.

Si compone fondamentalmente di due parti: quella superiore contiene l'elenco di tutte le proprietà contenute nell'insieme, mentre la sezione inferiore riporta il nome ed il valore della proprietà selezionata nella sezione superiore.

La sezione superiore utilizza un controllo ListView contenuto nei Microsoft Windows Common Controls 5.0, che pertanto devono essere presenti nel progetto. È stata preferita questa versione dei controlli per la loro leggerezza e poiché sono comunemente già installati nella maggior parte dei sistemi, a differenza della loro rispettiva versione 6.0.


Proprietà

Utilizzabile in fase di progettazione Utilizzabile in fase di progettazione
Accessibile in lettura in fase di esecuzione Accessibile in lettura in fase di esecuzione
Accessibile in scrittura in fase di esecuzione Accessibile in scrittura in fase di esecuzione
  • AutoSizeColumns As Boolean Utilizzabile in fase di progettazioneAccessibile in lettura in fase di esecuzioneAccessibile in scrittura in fase di esecuzione
    Determina il ridimensionamento automatico delle colonne in modo che venga visualizzato l'intero contenuto.

  • FullRowSelect As Boolean Utilizzabile in fase di progettazioneAccessibile in lettura in fase di esecuzioneAccessibile in scrittura in fase di esecuzione
    Restituisce o imposta un valore che determina se l'utente potrà scegliere qualsiasi colonna per evidenziare la riga.

    Vedi Note (1).

  • GridLines As Boolean Utilizzabile in fase di progettazioneAccessibile in lettura in fase di esecuzioneAccessibile in scrittura in fase di esecuzione
    Restituisce o imposta un valore che determina la presenza di una griglia.

    Vedi Note (1).

  • PropertiesContainer As Object Accessibile in lettura in fase di esecuzioneAccessibile in scrittura in fase di esecuzione
    Restituisce o imposta un insieme Properties.

    L'insieme verrà utilizzato per elencare tutte le proprietà contenute. Può essere a bse 0 oppure a base 1. Vedi Note (2).
    Al termine dell'assegnazione viene automaticamente eseguito il metodo Resync.

  • TrackSelect As Boolean Utilizzabile in fase di progettazioneAccessibile in lettura in fase di esecuzioneAccessibile in scrittura in fase di esecuzione
    Restituisce o imposta un valore che determina se la selezione seguirà la posizione corrente del mouse.

    Vedi Note (1).

Metodi

  • AboutBox
    Tipo di metodo: Sub
    Parametri richiesti: (nessuno)
    Definizione: Sub AboutBox()
    Visualizza le informazioni sul controllo.

  • ResizeColumns
    Tipo di metodo: Sub
    Parametri richiesti: (nessuno)
    Definizione: Sub ResizeColumns()
    Adatta la larghezza delle colonne.

  • Resync
    Tipo di metodo: Sub
    Parametri richiesti: (nessuno)
    Definizione: Sub Resync()
    Aggiorna i dati presenti nella griglia.

Eventi

Nessuno


Note

La versione 5.0 della ListView dei Microsoft Wndows Common Control non possiede tre proprietà contenute nella versione 6.0 degli stessi. A tal scopo sono state implementate nel controllo FBI Properties Browser le tre proprietà: FullRowSelect, GridLines e TrackSelect. La loro azione è forzata utilizzando la funzione API SendMessage e richiedendo lo stile esteso della ListView.

La proprietà PropertiesContainer è stata definita di tipo Object, anche se avremmo potuto utilizzare la classe Properties. La ragione di questa scelta è dettata dal fatto che il controllo può essere utilizzato anche con altri insiemi con interfaccia simile, quale l'insieme Fields di un RecordSet. Il controllo fondamentalmente utilizza qualsiasi insieme (a base 0 oppure 1) in cui ogni membro contiene al suo interno le proprietà Name e Value.

Figura 2Nell'esempio allegato e mostrato a fianco l'associazione è fatta sia con l'insieme Properties sia con l'insieme Fields di un RecordSet ADO.

La scelta è effettuata mediante i pulsanti di opzione in alto. La scelta dell'insieme Fields mostrerebbe il contenuto dei campi del record corrente. Ad ogni cambiamento del record corrente è però necessario richiamare il metodo Resync.

Fibia FBI
14 Ottobre 2002

Scarica il progetto
Scarica il progetto
Scarica il testo dell'articolo
Scarica il testo dell'articolo
Stampa l'articolo
Stampa l'articolo
Torna all'indice dei Controlli utente