Tkinter OSX and "lift"

Kevin Walzer kw at codebykevin.com
Thu Feb 21 10:53:14 EST 2008


Miki wrote:
> Hello Kevin,
> 
>> Tk.lift doesn't seem to work on OSX (Python 2.5.1).
>>> If you click on the PythonLauncher application that runs in your dock
>>> when this script is executed, the window comes into focus fine.
> You're right, but I want to window to be initially in focus (without
> the user clicking on the python launcher icon).

"Lift" (which calls the Tk command "raise") doesn't work this way, at 
least not under Aqua. If your application has focus, "lift" will raise 
the widget being called to the top of the stacking order. However, it 
will not make the application frontmost. To do this you'd have to use 
Carbon calls (look at Carbon.CarbonEvt) or use a Tk extension and call 
it from Python. Of course, this is pretty much a non-issue if your 
application is wrapped as a standard Mac application bundle via 
py2app--most Mac users don't run Python apps from the Terminal but 
instead double-click an application icon. In that event, "lift" should 
work fine, because the application will already have focus.

-- 
Kevin Walzer
Code by Kevin
http://www.codebykevin.com



More information about the Python-list mailing list