[Tutor] Re: Tix Select programming problem
Michael Lange
klappnase at freenet.de
Wed Dec 22 11:33:41 CET 2004
On Wed, 22 Dec 2004 11:37:57 +0900
Guillermo Fernandez Castellanos <guillermo.fernandez.castellanos at gmail.com> wrote:
Hi Guille,
>
> I'm playing now with the Select buttons:
>
> import Tix
>
> def prtS():
> print fruits.cget('value')
>
> def prtC(val):
> print val
> print sel.cget('value')
>
> root = Tix.Tk()
> fruits=Tix.Select(root,label="Fruits:", orientation='horizontal')
> fruits.add('orange',text="Orange",width=6,command=prtS)
> fruits.add('lemon',text="Lemon",width=6,command=prtS)
> fruits.add('apple',text="Apple",width=6,command=prtS)
> fruits.pack()
>
> sel=Tix.Control(root, label="X Coordinates", max=10, min=3,
> integer=True,command=prtC)
> sel.pack()
>
> root.mainloop()
>
The "command" option should be assigned to the Select widget itself, not to the added buttons.
It takes two arguments then (from the tixSelect man page):
Command-Line Name:-command
Database Name: command
Database Class: Command
Specifies the TCL command to be executed when the -value of the
Select widget is changed. This command will be invoked with two
arguments. The first is the name of the button subwidget that
has toggled. The second is a boolean value indicating whether
the button subwidget is selected. This command is executed only
when the -disableCallback option is set to false.
So I changed your code a little to make it work:
import Tix
def prtS(*args):
print args
print fruits.cget('value')
def prtC(val):
print val
print sel.cget('value')
root = Tix.Tk()
fruits=Tix.Select(root,label="Fruits:", orientation='horizontal',command=prtS)
fruits.add('orange',text="Orange",width=6)
fruits.add('lemon',text="Lemon",width=6)
fruits.add('apple',text="Apple",width=6)
fruits.pack()
sel=Tix.Control(root, label="X Coordinates", max=10, min=3,
integer=True,command=prtC)
sel.pack()
root.mainloop()
Hope this helped
Michael
More information about the Tutor
mailing list