Работа с tkinter Python

У меня есть потребность отобразить данные из SQLite3 в виде кнопок, чтобы по нажатию поле (tkinter.Entry()) заполнялось соответствующей информацией из таблицы. Пример: есть таблица с Именем и Фамилией. В окне tkinter'а создается столько виджетов кнопки, сколько всего людей в таблице. Кнопка должна иметь текст, который соответствует Имени из таблицы, по ее нажатию Имя и Фамилия должны попадать в виджет Entry().


Я пытался создать цикл for, который перебирает Имя и Фамилию из таблицы и создает кнопку с текстом=Имя, но созданные кнопки вставляли одинаковый текст.


import sqlite3 as sq
import tkinter as tk


if __name__ == '__main__':
    root = tk.Tk()
    root.geometry('1280x720')
    root.resizable(False, False)

    text_out = tk.Entry(root)
    text_out.place(x=1040,y=20,width=200,height=20)
    with sq.connect('database.sqlite3') as con:
        cur = con.cursor()
        cur.execute(
            """SELECT firstname, lastname FROM users"""
        )
        text_input.delete(0, tk.END)

        plus_y = 0
        for res in cur:
            f_string = f'{res[0]} {res[1]}'
            tk.Button(
                root, text=f'Firstname: {res[0]}',
                command=insert_name
            ).place(x=0, y=plus_y, width=200, height=15)
            plus_y += 15
        def insert_name():
            text_out.insert(tk.END, f_string)

    root.mainloop()

Ответы (0 шт):