[Tkinter-discuss] Redefine quit menu item on Mac to quit from a Twisted/Tkinter application?
Russell Owen
rowen at u.washington.edu
Thu Apr 9 01:12:27 CEST 2009
Thank you very much!
That is exactly the information I needed. It worked perfectly. I
already had a module that added a Quit/Exit menu for unix/Windows and
I just modified it to map the "exit" command to my quit function on
MacOS X. Just one new line of code and my application now quits
correctly!
-- Russell
On Apr 8, 2009, at 4:02 PM, Kevin Walzer wrote:
>
>> So I would like to find some way to modify the behavior of the
>> MacOS X Aqua Tcl/Tk Quit menu item.
>
> Russell,
>
> This requires some Tcl code.
>
> According to the Tcl/Tk Aqua FAQ at http://wiki.tcl.tk/12987,
> Command-Q (and the Quit menu item) trigger the kAEQuitApplication
> event, which is mapped to Tcl's "exit" (identical to sys.exit)
> command.
>
> The way to change this is to map the "exit" command to something
> else. This is so trivial to do in Tcl that it's actually dangerous
> (I've had apps crash on me because I named an image
> "exit"). ...Something like this would probably get close to what
> you're looking for:
>
> def printfoo:
> print "foo"
>
> self.createcommand('exit', printfoo)
>
> In other words, this should override the hard-coded "quit" function
> by mapping the "exit" Tcl command to something else. Then you could
> add your own event handler for Command-Q.
More information about the Tkinter-discuss
mailing list