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

Reply via email to