Как поставить значёк для приложения в Tkinter при компиляции в .exe

Как поставить значёк для приложения в Tkinter при компиляции в .exe. Ведь стандартная функция root.iconbitmap('icon.ico') меняет значёк только если он сохранён на ПК. А мне нужно сделать переносное приложение. Пожалуйста обьясните мне максимально просто ведь я очень плохо разбираюсь в Python.


Ответы (1 шт):

Автор решения: eri

Добавь указание иконки для пайинсталлера, например:

pyinstaller.exe --onefile --windowed --icon=icon.ico --add-data "icon.ico" app.py

А --windowed скроет консоль. --add-data упакует иконку вместе с кодом.

В самом коде ещё надо указать относительный путь к иконке на случай когда рабочая директория другая.

import pathlib,os.path
appdir = pathlib.Path(__file__).parent.resolve()
root.iconbitmap(os.path.join(appdir,'icon.ico'))
→ Ссылка