Я использую окно tkinter.ttk
, и я использую значок, чтобы установить битовую карту моего окна. Однако root.iconbitmap()
игнорируется в Windows 10. Но есть простой способ избежать ошибки: root.tkinter.call('wm', 'iconphoto', root._w, icon)
Итак:
from tkinter import *
from tkinter.ttk import *
root=Tk()
root.call('wm', 'iconphoto', root._w, icon)
работает.
НО
def func():
root=Tk()
root.call('wm', 'iconphoto', root._w, icon)
работает НЕ работает. Произошла ошибка. Интересно, что эта ошибка точно такая же, которая возникает при использовании root.iconbitmap()
:
Traceback (most recent call last):
File "E:\test.py", line 95, in <module>
func()
File "E:\test.py", line 36, in func
t.call('wm', 'iconphoto', t._w, icon)
_tkinter.TclError: can't use "pyimagex" as iconphoto: not a photo Image
И остался один интересный факт: в другом файле я тоже пытался использовать его как функцию, он работал. В новом файле (test.py
) он не работал (и это была та же функция).
Кто-нибудь знает, почему это не работает и что я могу сделать, чтобы избежать ошибки? Заранее спасибо ...