Adding Icon To Tkinter Window
Wildman
best_lay at yahoo.com
Sun Mar 6 01:04:21 EST 2016
On Sat, 05 Mar 2016 16:38:08 -0500, Terry Reedy wrote:
> On 3/5/2016 11:47 AM, Wildman via Python-list wrote:
>> Anybody have the correct method of adding an icon to a
>> window? I have found several code examples on the web
>> but they all result in an error. Thanks.
>
> No single simple statement work for all situations. You should have
> specified OS, Python version, and tcl/tk version. (IDLE's Help -> About
> IDLE displays full tk version).
>
> Here is the current code from idlelib.PyShell, written by Serhiy
> Storchaka, our current tkinter maintainer.
>
> # set application icon
> icondir = os.path.join(os.path.dirname(__file__), 'Icons')
> if system() == 'Windows':
> iconfile = os.path.join(icondir, 'idle.ico')
> root.wm_iconbitmap(default=iconfile)
> elif TkVersion >= 8.5:
> ext = '.png' if TkVersion >= 8.6 else '.gif'
> iconfiles = [os.path.join(icondir, 'idle_%d%s' % (size, ext))
> for size in (16, 32, 48)]
> icons = [PhotoImage(file=iconfile) for iconfile in iconfiles]
> root.wm_iconphoto(True, *icons)
>
> Non-windows pre-8.5 systems remain stuck with the tk icon.
>
> I just tried changing the 'if' line to 'if False:' on my 3.5.1 (8.6.4)
> windows install and the 2nd, wm_iconphoto block worked here also. It
> may be that it did not work on windows with 8.5 and before.
I appreciate your reply. Your code looks interesting but it
is over my head right now. I will save it for further study
and experimentation. Right now my problem was fixed by using
the code posted by Mr. Gollwitzer.
--
<Wildman> GNU/Linux user #557453
The cow died so I don't need your bull!
More information about the Python-list
mailing list