Differenze tra le versioni di "Referenziare in modo appropriato lo spazio all'interno di un Contenitore rispetto ai suoi Oggetti figli"
(Creata pagina con "Lo spazio all'interno di un contenitore deve essere referenziato tramite le Proprietà ".ClientHeight" e ".ClientWidth" del Contenitore. <BR>Le Proprietà ".W" e ".H" si rifer...") |
|||
(2 versioni intermedie di uno stesso utente non sono mostrate) | |||
Riga 1: | Riga 1: | ||
Lo spazio all'interno di un contenitore deve essere referenziato tramite le Proprietà ".ClientHeight" e ".ClientWidth" del Contenitore. | Lo spazio all'interno di un contenitore deve essere referenziato tramite le Proprietà ".ClientHeight" e ".ClientWidth" del Contenitore. | ||
− | <BR>Le Proprietà ".W" e ".H" si riferiscono invece all'intero Contenitore, inclusi margini, | + | <BR>Le Proprietà ".W" e ".H" si riferiscono invece all'intero Contenitore, inclusi margini, ''header'' e quant'altro. Quindi fare riferimento a queste due ultime Proprietà può portare a calcoli errati. |
L'area utile è identificabile tramite le Proprietà ".ClientWidth" e ".ClientHeight". | L'area utile è identificabile tramite le Proprietà ".ClientWidth" e ".ClientHeight". | ||
Riga 8: | Riga 8: | ||
Nel caso specifico di una ''ScrollBox'', la questione è più accentuata a causa degli Oggetti che sono già presenti nel Contenitore (es. le ''ScrollBar'' laterali e in basso), e tenendo anche presente che l'area utile è più grande di quella visibile. | Nel caso specifico di una ''ScrollBox'', la questione è più accentuata a causa degli Oggetti che sono già presenti nel Contenitore (es. le ''ScrollBar'' laterali e in basso), e tenendo anche presente che l'area utile è più grande di quella visibile. | ||
<BR>In effetti ci sono due aree identificabili: l'area visibile e l'area di ''scroll'' (mediamente più grande). Le proprietà di individuazione sono perciò diverse. | <BR>In effetti ci sono due aree identificabili: l'area visibile e l'area di ''scroll'' (mediamente più grande). Le proprietà di individuazione sono perciò diverse. | ||
− | <BR>Per l'area visibile si utilizzano le Proprietà | + | <BR>Per l'area visibile si utilizzano le Proprietà ".ScrollX", ".ScrollY", ".ScrollH" e ".ScrollW", che hanno origine non più da zero, ma dalla posizione della zona all'interno dell'area totale. Invece per l'area totale si utilizzano le classiche Proprietà ".ScrollX", ".ScrollY", ".ScrollH" e ".ScrollW". |
=Note= | =Note= | ||
− | * Per un esempio pratico vedere la seguente pagina: [[ | + | * Per un esempio pratico vedere la seguente pagina: [[Fissare la distanza di un Controllo grafico in modo costante rispetto ai bordi del Form durante il ridimensionamento di questo]] |
Versione attuale delle 14:54, 25 giu 2024
Lo spazio all'interno di un contenitore deve essere referenziato tramite le Proprietà ".ClientHeight" e ".ClientWidth" del Contenitore.
Le Proprietà ".W" e ".H" si riferiscono invece all'intero Contenitore, inclusi margini, header e quant'altro. Quindi fare riferimento a queste due ultime Proprietà può portare a calcoli errati.
L'area utile è identificabile tramite le Proprietà ".ClientWidth" e ".ClientHeight".
Tramite queste Proprietà ci si può spostare senza problemi nella zona assegnata agli Oggetti "figli" del Contenitore.
Stessa cosa avviene per il posizionamento del margine Top/Left, che deve corrispondere come limite alle Proprietà ".ClientX" e ".ClientY" pur essendo comunque che queste sono sempre 0,0 e quindi non si hanno problemi.
Nel caso specifico di una ScrollBox, la questione è più accentuata a causa degli Oggetti che sono già presenti nel Contenitore (es. le ScrollBar laterali e in basso), e tenendo anche presente che l'area utile è più grande di quella visibile.
In effetti ci sono due aree identificabili: l'area visibile e l'area di scroll (mediamente più grande). Le proprietà di individuazione sono perciò diverse.
Per l'area visibile si utilizzano le Proprietà ".ScrollX", ".ScrollY", ".ScrollH" e ".ScrollW", che hanno origine non più da zero, ma dalla posizione della zona all'interno dell'area totale. Invece per l'area totale si utilizzano le classiche Proprietà ".ScrollX", ".ScrollY", ".ScrollH" e ".ScrollW".
Note
- Per un esempio pratico vedere la seguente pagina: Fissare la distanza di un Controllo grafico in modo costante rispetto ai bordi del Form durante il ridimensionamento di questo