Re: changement de formes avec shape
[ Nouvelle discussion
| Répondre au groupe
|
fr.comp.lang.tcl ]
Sujet: Re: changement de formes avec shape
De: david.co...@gmail.com (david cobac)
Groupes: fr.comp.lang.tcl
Organisation: Guest of ProXad - France
Date: 13. May 2008, 21:45:04
References: 1 2 3 4
|
Eric Hassold <hassold@evolane.com> a écrit :
>Essaye en creant une image de taille fixe (par exemple 48x48), qui
>couvre tout le canvas de meme taille, et en utilisant pixane pour
>modifier le contenu de cette image en partant d'un contenu totalement
>transparent, et en y copiant l'image a la taille souhaitee, centree.
Bonsoir Éric,
bon avec tes indications j'arrive bien au résultat sur le centrage :
proc retailleIcone {src {reduc .75}} {
set icone [pixane create]
pixane load $icone -file $src
## creation icone en taille ::t
set nvIcone [pixane create]
pixane resize $nvIcone $::t $::t
pixane blank $nvIcone
pixane scale $nvIcone $icone -width $::t -height $::t
set i [pixcopy $nvIcone]
pixane delete $nvIcone
# creation reduction de l'icone
set nvIcone [pixane create]
set t [expr {int(.75*$::t)}]
pixane resize $nvIcone $t $t
pixane blank $nvIcone
pixane scale $nvIcone $icone -width $t -height $t
# creation icone reduite en taille ::t
set nnvIcone [pixane create]
pixane resize $nnvIcone $::t $::t
pixane blank $nnvIcone
set d [expr {int((1-$reduc)*$::t/2)}]
pixane copy $nnvIcone $nvIcone -to $d $d
set k [pixcopy $nnvIcone]
#
pixane delete $nvIcone
pixane delete $nnvIcone
pixane delete $icone
return [list $i $k]
}
>Le
>Enter/Leave sera alors sur une zone constance, et le code sera d'autant
>plus simple que c'est alors la meme image qui sera utilisee pour l'item
>du canvas, en (0,0) ancre NW, et pour le masque du "shape".
Par contre, toujours dans le cas d'une réduction (le problème ne se
posant pas avec un agrandissement), il n'y a pas d'amélioration :
toujours une zone limite qui fait clignoter l'icône entre Enter et
Leave...
>Et pour le redimensionnement fluide, pixel par pixel, pour un look&feel
>facon dock MacOSX, suffira alors de faire grandir l'image selon la
>distance du pointeur au centre de l'image.
Ah ouais !! subtil ! merci pour l'astuce, mais j'avoue que ce qui me
déplaît dans ce genre de menu c'est sans doute ce qui plaît pour
d'autres : les agrandissements bouge tout le menu, et je trouve (mais
les goûts et les menus...) que ça nuit à la lisibilité du menu, non ?
Merci beaucoup !
David

|
 cette fonctionnalité est reservée aux membres ayant une session active !
|