DEFGRIDPANEL
Consente di definire un pannello con layout dinamico di tipo Griglia.
Al suo interno i componenti sono organizzati all'interno di una griglia 'virtuale' fatta di righe e colonne dove ogni casella ha la funzione di contenitore per altri pannelli o per i controlli a video.
- Bisogna richiamare la specifica di chiusura @ENDGRIDPANEL.
- I metodi sono richiamabili nella callback specificata nel parametro ONLOAD della @DEFVID per le impostazioni della prima visualizzazione oppure in una qualsiasi azione per modificare le impostazioni in un secondo momento.
Parametri
| Parametro | Definizione | I/O | Versione traduttore | SMP | |
|---|---|---|---|---|---|
| NOME | Intero | ||||
| POS | |||||
| DIM | |||||
| DIMVAR | 27.3 | ||||
| MARGINI | |||||
| ID | Stringa | ||||
| TIT | Variabile | ||||
| BORDO | Intero | ||||
| SFONDO | Intero | ||||
| STILE | Stringa | ||||
| DIMENSIONAMENTOAUTOMATICO | Intero | ||||
| NASCOSTO | Condizione | ||||
| DISABILITATO | Condizione | ||||
| OUTPUT | Condizione | ||||
| COLONNA | |||||
| RIGA | |||||
| LAYOUTTIT | |||||
| SPLITTER | |||||
| GRID | |||||
| STACK | |||||
| EXPANDER | |||||
| DOCK | |||||
| PERSONALIZZABILE | Intero | ||||
| LINKTO | |||||
| AZIONEINVIO |
POS
Posizionamento del controllo.
Consente di indicare la riga e la colonna. Per entrambi è possibile specificare l'unità di misura.
POS[RigaVid [UnitàMisura], ColonnaVid [UnitàMisura]]
L'unità di misura può essere: 'C' per il posizionamento a caratteri e 'P' per il posizionamento in pixel. L'indicazione è opzionale, se omesso si assume 'C' come default.
DIM
Consente di definire le dimensioni del pannello.
Se il parametro DIM è omesso il dimensionamento coincide con la videata o il contenitore al cui interno stiamo inserendo il nuovo pannello, possiamo quindi definire un dimensionamento fisso oppure ereditarlo dal contenitore 'padre'.
DIMVAR
Consente di definire le dimensioni del pannello.
Se il parametro DIMVAR è omesso per il dimensionamento verrà utilizzato il parametro DIM.
MARGINI
Consente di definire un margine (padding) a sinistra e sopra (left e top) dei componenti inseriti al suo interno.
ID
Definisce la variabile o la costante di programma che contiene l'identificatore univoco del controllo.
Viene utilizzato dall'ambiente per gestire le personalizzazioni effettuate durante l'esecuzione del programma.
TIT
Consente di indicare il titolo del pannello.
Indicando tale parametro viene definita in testa al pannello una riga di intestazione con il testo al suo interno e imposta automaticamente il bordo sul pannello.
BORDO
Permette di avere un bordino intorno al pannello di colore accent color e lo sfondo dell'area più chiaro rispetto al colore della videata.
Impostato di default se il pannello ha un titolo con LAYOUTTIT #DEFAULT.
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | No |
1 | Si |
SFONDO
Consente di definire uno sfondo più chiaro rispetto alla videata.
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | No |
1 | Si |
STILE
Attributo di definizione dello stile da applicare al controllo.
Può essere una delle costanti definite in BC per gli stili oppure uno stile precedentemente definito tramite @DEFSTYLE.
DIMENSIONAMENTOAUTOMATICO
Permette di accorpare il contenitore in base alla dimensione di righe e colonne visibili.
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | No |
1 | Si |
NASCOSTO
Permette di indicare la condizione per nascondere il controllo.
La condizione viene applicata solo in fase di creazione della videata (in contesto desktop).
DISABILITATO
Permette di indicare la condizione per disabilitare il controllo.
OUTPUT
Permette di indicare la condizione per rendere in output il controllo.
COLONNA
Colonna logica del GridPanel
RIGA
Riga logica del GridPanel
LAYOUTTIT
Consente di definire lo stile da applicare al titolo del layout dinamico.
SPLITTER
Permette di definire lo splitter all'interno del pannello, graficamente è una sottile banda più chiara con 6 punti disegnati al centro.
Lo splitter è una estensione della colonna o della riga su cui viene definito e oltre ad avere la funzione di separatore di colonna (o di riga) permette a runtime di modificare la dimensione delle colonne (righe) confinanti.
GRID
Attached Property per pannello di tipo Grid
EXPANDER
Attached Property per pannello di tipo Expander
DOCK
Consente di indicare se l'oggetto deve occupare tutto lo spazio del DockPanel in verticale e/o in orizzontale (possono essere indicati entrambi).
PERSONALIZZABILE
Consente di definire l'oggetto grafico come personalizzabile dall'utente in fase di runtime.
Parametro con valori ammessi, si possono utilizzare i seguenti valori:
| Valore | Descrizione |
|---|---|
0 | No |
1 | Si |
LINKTO
Consente di creare un legame tra due controlli esistenti all'interno della stessa videata.
AZIONEINVIO
Permette di definire l'identificativo di un controllo, dal quale, prelevare l'azione ed eseguirla alla pressione del tasto INVIO.
L'utilizzo del parametro implica l'utilizzo del parametro ID
Metodi
| Metodo | Descrizione | SMP |
|---|---|---|
| Ridimensionamento | Ridimensiona automaticamente il pannello | |
| Set_MenuLabel | Aggiorna la label associata al pannello per l'apertura del menu di contesto di riferimento | |
| Set_Sottotitolo | Aggiorna sottotitolo pannello | |
| Set_Stile | Aggiorna lo stile del pannello | |
| Set_Titolo | Aggiorna titolo pannello |
Esempi
Definizione di un grid panel
'@DEFVID DIM[20,70] TIT["Videata esempio"] ID["IDVideata"] TOOLBAR[IDTOOLBAR["IDToolbar"]]
'@DEFTOOLBAR IDTOOLBAR["IDToolbar"] _
BOTTONE[IDBOTTONE["SYS_EXIT"] AZIONE[Abbandona()]] _
BOTTONE[IDBOTTONE["INVIO"] AZIONE[AzioneInvio()]]
'@DEFGRIDPANEL NOME[GridPanel] ID["IDGridPanel"] _
TIT["Titolo"] LAYOUTTIT[STILE[#INTESTAZIONE_VIDEATA]] _
COLONNA[LUNGHEZZA[30] LAYOUT[#FISSO]] _
COLONNA[LUNGHEZZA[40] LAYOUT[#DINAMICO]] _
RIGA[ALTEZZA[1] LAYOUT[#FISSO]] _
RIGA[ALTEZZA[18] LAYOUT[#DINAMICO]] _
RIGA[ALTEZZA[1] LAYOUT[#FISSO]] _
RIGA[ALTEZZA[1] LAYOUT[#DINAMICO] ALTEZZADINAMICA[1]] _
SFONDO[1] AZIONEINVIO[ID["INVIO"]]
'Label con dimensioni fisse
'@DEFLABEL ID["IDLabel1"] VAR["Codice1"] DIM[1,1] POS[1,1] GRID[COL[1] RIGA[1]]
'Label con dimensioni dinamiche per riga
'@DEFLABEL ID["IDLabel2"] VAR["Codice2"] DIM[1,1] POS[1,1] GRID[COL[1] RIGA[2] RIGADIN[1]]
'Label con dimensioni dinamiche per colonna
'@DEFLABEL ID["IDLabel3"] VAR["Codice3"] DIM[1,1] POS[1,1] GRID[COL[2] RIGA[1] COLDIN[1]]
'Label con dimensioni dinamiche per colonna e per riga
'@DEFLABEL ID["IDLabel4"] VAR["Codice4"] DIM[1,1] POS[1,1] GRID[COL[2] RIGA[2] RIGADIN[1] COLDIN[1]]
'Label inserito nella riga che si espande in entrambe le colonne
'@DEFLABEL ID["IDLabel5"] VAR["Codice5"] DIM[1,1] POS[1,1] GRID[COL[1] RIGA[1] COLDIN[1] COLSPAN[2]]
'Label inserito nella riga con altezza dinamica
'@DEFLABEL ID["IDLabel6"] VAR["Codice6"] DIM[1,1] POS[1,1] GRID[COL[1] RIGA[3] RIGADIN[1]]
'@ENDGRIDPANEL NOME[GridPanel]
'@RUNVID
...
'@SRP AzioneInvio()
GridPanel.Set_Titolo("Nuovo titolo")
Return