Привязать ID кнопки к самой кнопке

Рейтинг: 1Ответов: 0Опубликовано: 17.04.2023

Я пишу программу которая бы показывала текстовые файлы нужной мне папки и их содержимое, используя определенный шрифт. Я написал совсем немного, но суть не в этом.

Вот что я написал:

from tkinter import *
from tkinter import ttk
import os

root = Tk()
root.title("FILE OPENER")
root.geometry("2500x1000")

canvas = Canvas(bg="white", width=2500, height=1000)
canvas.pack(anchor=CENTER, expand=1)

def START():
    canvas.delete(SBID)
    for filename in os.listdir("D:/Python files"):
        print(filename)
    AB = ttk.Button(text="ADD NEW FILE", command=ADD_FILE)
    ABID = canvas.create_window(100, 100, anchor=NW, window=SB, width=300, height=800)

SB = ttk.Button(text="START", command=START)
SBID = canvas.create_window(690, 30, anchor=NW, window=SB, width=600, height=200)

def ADD_FILE():
    pass

root.mainloop()

В чем моя проблема. Когда я запускаю код, появляется меню с кнопкой START. Потом я на неё нажимаю и появляется вторая, но на второй также написано START, хотя должно было быть написано ADD NEW FILE.

Я думаю что проблема в том, что когда я создаю АВ, он создается правильно, но потом он превращается в стоящий под ним SB. Я также думаю, что возможно можно как-то привязать ID кнопки к самой кнопке чтобы SB было привязано к SBID, AB к ABID и чтобы они не пересекались. Если то возможно, пожалуйста, подскажите как. Если нет, то подскажите как проблему можно исправить другими способами.

Расшифорвки: SB - Start Button AB - Add Button

Ответы

Ответов пока нет.