[Squeak-fr] Re: Positionnement des morphs : Layout et compagnie

FERRERE Frédéric frederic.ferrere at free.fr
Dim 23 Juil 12:52:59 UTC 2006


Alain Plantec a écrit :
> Bonjour,
> je pense avoir trouvé mieux finalement, j'ai complété la FAQ sur ofset avec :
>
> on peut utiliser Morph>>#layoutInset: et Morph>>#cellInset: : 
> ces deux méthodes prennent un point en argument pour spécifier l'espace horizontal et vertical; 
> #layoutInset: est pour l'espace intérieur du conteneur 
> #cellInset: est pour l'espace intérieur entre les morphs contenus 
>
>    | conteneur rect1 rect2 rect3 |
>    conteneur := AlignmentMorph newRow 
>    color: Color black;
>    layoutInset: 50 @ 0;
>    cellInset: 50 @ 0;
>    hResizing: #shrinkWrap;
>    vResizing: #shrinkWrap.
>    rect1 := RectangleMorph new  extent: 50 @ 20; color: Color red.
>    rect2 := RectangleMorph new extent: 50 @ 20; color: Color blue.
>    rect3 := RectangleMorph new extent: 50 @ 20; color: Color green.
>    conteneur 
>       addMorph:  rect1 ;
>       addMorph: rect2;
>       addMorph: rect3;
>       openInWorld.
>
> C'est mieux car on évite l'utilisation d'un morph fantôme et c'est paramétrable en x et y.
> Il faut un morph conteneur avec un TableLayout.
>
> alain
>
>   
En effet, c'est plus "propre".
Cependant, j'ai eu besoin de garder la technique des morphs fantomes car 
mon conteneur a une taille bien définie.
En outre, la taille des morphs visibles est potentiellement modifiable 
ce qui implique de devoir changer le code pour
adapter les valeurs de layoutInset et cellInset ; avec les morphs 
fantomes ce n'est pas nécessaire.

Cordialement,
--
Frédéric



More information about the Squeak-fr mailing list