Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Les thèmes…un poème ?

6 views
Skip to first unread message

Tony

unread,
Oct 6, 2010, 1:57:39 AM10/6/10
to
Bonjour,
Je pratique Tcl/Tk depuis un certain temps et je me suis toujours
borné à utiliser les widgets « classiques ».
Trouvant les possibilités offertes par les widgets à thèmes de ttk::
intéressantes, j’ai commencé à les utiliser. Globalement ça va, mais
le truc que je ne saisis vraiment pas c’est la façon (et la logique)
de piloter les thèmes.

1) Y’a-t-il un document expliquant simplement la façon de les
utiliser ?

2) Exemple tout bête, Sur un widget ttk::entry je n’arrive pas à
modifier la couleur de background (alors que j’y arrive sur un
ttk::label avec –background ?!).
Quelle est l’erreur dans la code suivant (sachant que le –background
doit très certainement être redondant)

set toto "balabla"
ttk::setTheme clam

#ok
pack [entry .e1 -textvariable toto -background red]

#pas ok ?
pack [ttk::entry .e2 -textvariable toto -background red -style
TEntry]
ttk::style configure TEntry -background red

Merci d’avance pour ceux et celles qui éclaireront ma lanterne.
Tony.

Vincent Verdon

unread,
Oct 6, 2010, 1:43:41 PM10/6/10
to
Bonsoir,

Le 06/10/2010 07:57, Tony a écrit :
> Bonjour,
> Je pratique Tcl/Tk depuis un certain temps et je me suis toujours
> borné à utiliser les widgets « classiques ».

Je suis dans le même cas !

> Trouvant les possibilités offertes par les widgets à thèmes de ttk::
> intéressantes, j’ai commencé à les utiliser. Globalement ça va, mais
> le truc que je ne saisis vraiment pas c’est la façon (et la logique)
> de piloter les thèmes.

>


> 2) Exemple tout bête, Sur un widget ttk::entry je n’arrive pas à
> modifier la couleur de background (alors que j’y arrive sur un
> ttk::label avec –background ?!).
> Quelle est l’erreur dans la code suivant (sachant que le –background
> doit très certainement être redondant)
>
> set toto "balabla"
> ttk::setTheme clam
>
> #ok
> pack [entry .e1 -textvariable toto -background red]
>
> #pas ok ?
> pack [ttk::entry .e2 -textvariable toto -background red -style
> TEntry]
> ttk::style configure TEntry -background red

Je dis peut-être n'importe quoi, mais justement l'intérêt d'utiliser des
thèmes est de ne pas avoir à fixer manuellement les choses, je ne vois
donc pas l'intérêt de l'option -background et -style TEntry, car le fair
de fiwer au départ un thème, dans l'exemple clam devrait fixer les
options de tous les widgets.
Je suis également preneur d'exemple et explications sur ttk.

Amicalement, Vincent Verdon

Kroc

unread,
Oct 11, 2010, 3:31:55 AM10/11/10
to
Je suis d'accord avec Vincent : le principe des thèmes c'est justement
de ne pas avoir à modifier ces choses, de façon à ce que les
interfaces restent parfaitement portables. Sur OS X, par exemple,
selon la charte graphique, changer les fonds est la plupart du temps
impossible.

Sinon, ce que j'ai trouvé de mieux pour apprendre ::ttk c'est TkDocs,
l'excellent site de Mark Roseman : http://www.tkdocs.com

--
David Zolli

Tony

unread,
Oct 12, 2010, 11:32:04 AM10/12/10
to
------------------------------------------------------------
Ce site qui est effectivement très bien.
Concernant, mon problème, je suis d’accord sur l’intérêt des thèmes,
mais dans une application graphique on peut être amené à vouloir
modifier un widget et uniquement un seul (exemple mettre une entrée en
fond rouge => c'est ce que je veux faire).

Sur l’exemple suivant :

ttk::style theme use clam
ttk::style configure TEntry -font "helvetica 24" -background red
pack [ttk::entry .e -style TEntry]

ttk::style configure TButton -font "helvetica 24" -background red
pack [ttk::button .b -style TButton]

J’arrive bien à modifier mon bouton et pas mon entréee. Je suis
certain que la solution doit être relativement simple, mais je sèche.
Tony.
------------

Kroc

unread,
Oct 13, 2010, 3:31:42 AM10/13/10
to
Bonjour Tony,

Le background de ton entry est bien rouge dans ton exemple, mais je
pense que ça n'est pas le background que tu souhaites modifier, mais
le fond de la zone de saisie :

ttk::style configure TEntry -fieldbackground red

Ciao,

--
David Zolli

Tony

unread,
Oct 13, 2010, 5:57:52 AM10/13/10
to
------------
Merci effectivement c’est exactement ce que je voulais et cela me
confirme que cela était très simple.
Dernière petite question, où trouver ces précieuses informations?
c’est en fait ça qui me manque (pas trouvé sur le User guide d’Active
State, la doc que j’ai sur tcl8.5 idem, doc exhaustive ?)
Merci.
Tony.
------------
Message has been deleted
0 new messages