tkinter 프레임 상속 된 클래스에 새 옵션을 추가하고 싶습니다. 이 옵션은 photos
이고 URL 목록이어야합니다. 문제는이 옵션을 tkinter Frame 상속 클래스에 전달할 때 파이썬이 해당 위젯에 옵션을 사용할 수 없다는 오류를 발생시키는 것입니다.상속받은 tkinter 프레임 클래스에 새 옵션을 추가하려면 어떻게해야합니까?
호출은 다음
self.photos = [url1, url2, url3]
self.slideshow_photos = SlideShow(self, width=320, photos=self.photos)
그리고 내 클래스는 다음과 같다 :
class SlideShow(tkinter.Frame):
def __init__(self, master=None, *args, **kwargs):
tkinter.Frame.__init__(self, master, *args, **kwargs)
self.master = master
self.grid()
self.photos = []
for photo in kwargs.get('photos', []):
self.photos.append(ImageTk.PhotoImage(Image.open(io.BytesIO(urlopen(photo).read()))))
self.label_photo = tkinter.Label(self, image=self.photos[0])
self.label_photo.photo = self.photos[0]
self.label_photo.grid(column=1, row=1)
내 첫번째 생각은 Frame.__init__
-*args, **kwargs
하지만를 통과하지하는 것이었다 나는 다른 프레임을 통과 할 때 옵션 (예 : width
)은이 옵션을 더 이상 고려하지 않습니다.
두 번째 아이디어는 **kwargs
의 옵션을 가져와 Frame.__init__
을 호출하기 전에 해당 옵션을 삭제했지만 가장 좋은 방법이라고 생각하지 않습니다.
아이디어가 있으십니까?