Gordon Airporte wrote:
> The dialogs in tkColorChooser, tkFileDialog, etc. return useful values
> from their creation somehow, so I can do stuff like this:
>
> filename = tkFileDialog.askopenfilename( master=self )
>
> I would like to make a Yes/No/Cancel dialog that can be used the same
> way (returning 1/0/-1), but I just cannot figure out how to do it. At
> best I've been able to get some kind of instance id from the object. How
> does this work?
All of the dialogs you mention use functions as a caller. And then the
function is returning the result.
From tkColorChooser...
def askcolor(color = None, **options):
"Ask for a color"
if color:
options = options.copy()
options["initialcolor"] = color
return Chooser(**options).show()
In this case the Chooser(**options) initiates the dialog, and then the
show() method is called and it returns the value. The return line above
is the same as...
cc = Chooser(**options)
color = cc.show()
return color
The other dialogs work in same way. They are all based on
tkCommonDialog, so look in tkCommonDialog.py to see exactly what's going on.
Cheers,
Ron
--
http://mail.python.org/mailman/listinfo/python-list