我試圖在我的 Tkinter 專案中包含一個圖示位圖,但我希望它是一個單獨的 .exe 檔案。出于這個原因,我不想使用其他需要的檔案(比如在同一個目錄中)。我的想法是,只使用圖片的 URL。我發現的是:
root.tk.call('wm', 'iconphoto', root._w, tk.PhotoImage(file="icon.png"))
怎么可能使用 URL 代替?或者也許有另一種存盤圖示的方式,除了作為單獨的檔案。
uj5u.com熱心網友回復:
您可以將 PhotoImage 資料嵌入為 base64 并將其直接包含在代碼中。獲取任何支持的檔案型別的檔案的內容(例如:gif、png 用于較新版本的 python)并使用 base64 對其進行編碼。
下面的代碼定義了一些影像資料,然后用它來創建一個PhotoImage. 生成的影像可以在任何可以使用的地方PhotoImage使用。
image_data = """
R0lGODlhGAAYAPZvAAIaLgwmOwcnQQcoQBMxSBc4VBQ6Vhk7VRY9WhY XSI4RxJC
ZRRCZi9KYSFNbzJUbSJOcCZVeiZUeyBWfy1Zei5afB1Wgh1XgyFXgDpjgSVjkyZl
liZnmCxrmixsmjZtlSptoCpuoSxxqCxzqjh1oTV3qDR4qD5/rjV8tDV tUFlgUZp
hFNwhVVyh0ZzlUh7nnB8hUF8pkJ8pkx oTuBuFmBn3SEkHeOn3mNnUeBqUiBqUqD
q1CBpFKCpVuDoVyEokeGs0eHs0aKvkaMvlGOuGqKom Pp3yUpziEwTiFwz2KxT K
xE6VylKUw1qaxV6fx0CQ0E b1lCd1l6h0Wiq1Wyu12Wp22aq3FOi4F2s5WCt5W64
7XW24Xu743u/6omfsZymroqhso6jtJynsJ2psaS1w6S2xIvH7YvI7d/h5ODi5eDk
5 Dm6uLn7OPo7QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAACH SUNvcHlyaWdodCBJTkNPUlMgR21iSCAod3d3Lmljb25l
eHBlcmllbmNlLmNvbSkgLSBVbmxpY2Vuc2VkIHByZXZpZXcgaW1hZ2UAIfkEBQAA
bwAsAAAAABgAGAAAB9eAb4KDhIWGh4iJiouMjY6PiGkwCgAACjBqj2ABBSw3Ny0H
AWONYwIqYmFfX2FiKwNki2kEFEZFRba3RhUEa4o2Cy41NT/FPsMuDDaKDRYfLzM8
PT0zMy8fFw2KBRoeJDI6Ojs5MSQdGwaKCCAmJ0FE8ERAJyUhCYoPIjRDTU5PT06a
CKEx4oEiHBuWMJlCpUoVKlOYKOFwQxEbB0ikXOHSpQsXK1GSQGizyIwFKFq8oDnj
JQsUDGYalYmAYsqWLVhSSIjpqM2RDBMuZDjiBpLRo0iTKjUaCAA7
"""
the_image = tk.PhotoImage(data=image_data)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/425892.html
