Metodi ed Eventi della Grids

 

 

Il presente articolo fa parte di una serie di quattro:

1) Griglia speciale
2) Schema a blocchi dell'oggetto Grids
3) Descrizione del metodo FillGrid
4) Descrizione dei metodi e degli eventi della grid ( il presente )

I metodi-eventi della griglia :

CellClick() , CellRightClick() , CellKeyPress() , HeaderClick() , HeaderRightClick() , SetOtherCaracteristics()

 

Sono dei metodi che vengono invocati ogni volta che si verificano gli eventi Click o RightClick sugli oggetti contenuti nelle colonne della griglia: le Headers (che hanno il nome H1 ) e le celle (che hanno il nome T1)

Le classi per gli oggetti H1 e T1 (queste classe si trovano nel file ClsDefs.prg) sono costruite in modo che gli eventi Click, DblClick,RightClick, KeyPress, InteractiveChange chiamino dei metodi corrispondenti della classe GridS, cioè che si trovano al livello della griglia:

CellClick
HeaderClick
CellDblClick()
HeaderDblClick()
CellRightClick()
HeaderRightClick()
CellKeyPress()
CellInteractiveChange()

Se, per esempio, si vuol far accadere un determinato evento quando l'utente fa Click sulle Headers di tutte colonne o di certe colonne, HeaderClick() è la proprietà che dovrà gestire l'evento e quindi è qui che va inserito il codice.

Tutte questi metodi ricevono le referenze di due o tre oggetti: l'oggetto della colonna e gli oggetti della Header e della cella della colonna in quale è successo l'evento.

Se si vuole che il codice venga eseguito solo per gli oggetti di certe colonne, si può fare uso delle proprietà oCol.ColumnOrder, oCol.ControlSource, oHeader.Caption per gestire la sezione della colonna desiderata.

Procedure CellClick
lParameters oCell,oCol
Do case
             Case oCol.ColumnOrder=2

             *qui scrivi il codice che vuoi che si esegui quando
             *l'utente fa clicca una cella della seconda colonna

            Case oCol.H1.Caption="Prezzo"
            *qui scrivi il codice che vuoi che si esegui quando
            *l'utente fa clicca una cella della colonna che ha come
            *Caption della Header la stringa "Prezzo"
EndCase

Il metodo SetOtherCaracteristics(), viene invocato dal metodo FillGrid( ) ogni volta questo costruisce/aggiunge una colonna alla griglia.
In questo metodo potete impostare dei valori particolari per le proprietà degli oggetti nella griglia.

Nella form GridSEsempio.scx mi sono giocato un po' con i colori delle colonne in questo metodo.

Il metodo CellKeyPress( ) viene invocato ogni volta viene premuto un tasto in una cella della griglia.

Se non avete bisogno di implementare codice per questo metodo forse è meglio che lo disinibite commentando la procedura KeyPress dalla definizione della classe MyText dal file ClsDefs.prg

CellInteractiveChange( ), come CellKeyPress( ) può essere disinibito se non si intende di implementare codice per questo evento.

 

Articolo di: Ernest Morariu ©
Torino, 19 Novembre 2001
ernestmorariu@libero.it

 

© Articolo: Ernest Morariu Novembre 2001 - Riproduzione vietata

© FoxPro e Visual FoxPro sono un marchi registrati da Microsoft Corporation

 



Data: 19/11/2001
webmaster@foxitaly.com

 

dal 22 Giugno 1999