Ошибка при добавлении простого маленького изображения к кнопке в Tkinter

Я пытаюсь научиться использовать Python TTK, я продолжаю получать сообщение об ошибке при добавлении простого маленького изображения к кнопке, это может быть любое изображение в том же файле, что и программа. Это код:

# from PIL import ImageTk, Image
from tkinter import *
from tkinter import ttk
from PIL import ImageTk, Image

window = Tk()

window.wm_iconbitmap('icon.ico')
window.geometry('200x200')
user = ttk.Label(window, text='Username').pack()
userEnt = ttk.Entry(window).pack()
passW = ttk.Label(window, text='Password').pack()
passEnt = ttk.Entry(window).pack()
logButton = ttk.Button(window, text='Login').pack()

myImg = PhotoImage(file='C:\\Users\edwin\Desktop\Python\Tkinter\logo.png')

logButton.config(image=myImg, compound=RIGHT)

window.mainloop()

Это ошибка, которую я получаю, и я не знаю, почему!

Файл "C:/Users/edwin/Desktop/Python/Tkinter/trial.py", строка 18, в logButton.config(image=myImg, соединение=RIGHT) AttributeError: 'NoneType ' у объекта нет атрибута 'config'


person Edwin Henriquez    schedule 26.07.2017    source источник
comment
Является ли это дубликатом stackoverflow.com/questions /23231563/ ?   -  person user3486184    schedule 26.07.2017


Ответы (1)


вы присваиваете значения выходным данным pack(), а не выходным данным экземпляра класса. Вам нужна еще одна строка:

 # from PIL import ImageTk, Image
from tkinter import *
from tkinter import ttk
from PIL import ImageTk, Image

window = Tk()

window.wm_iconbitmap('icon.ico')
window.geometry('200x200')
user = ttk.Label(window, text='Username')
user.pack()
userEnt = ttk.Entry(window)
userEnt.pack()
# so on and so forth
person Vince W.    schedule 26.07.2017