У меня есть следующий код, и он, похоже, отлично работает без добавления «я» к экземплярам виджета. Могу ли я столкнуться с проблемами в будущем, если не воспользуюсь собой?
class Appy:
def __init__(self, master):
self.drawBoard()
def drawBoard(self):
pane_1 = ttk.PanedWindow(master, orient='horizontal')
pane_1.pack(padx=20, pady=10, fill='both', expand=True)
photo_frame = ttk.Frame()
content_frame = ttk.Frame()
pane_1.add(photo_frame)
pane_1.add(content_frame)
image_label = ttk.Label(photo_frame)
image_label.pack(anchor='center', fill='both', expand=True)
....
if __name__ == '__main__':
master = tkinter.Tk()
Appy(master)
master.geometry('1250x750+200+50')
master.mainloop()
Я не совсем понимаю, что вы имеете в виду, говоря «добавление self к экземплярам виджета». Не могли бы вы показать пример?
Вы хотите иметь доступ к этому PanedWindow вне метода drawBoard? Если это так, вы должны сделать его атрибутом, а не локальной переменной, то есть self.pane_1 = ttk.PanedWindow(master, orient='horizontal').
да Аран, спасибо, это отвечает на мой вопрос






self- это не ключевое слово. Это имя переменной, представляющий объект экземпляра.