заданное число полей ввода и вывода

Есть ли возможность сделать так, чтобы количество полей для ввода данных и их вывода можно было задавать с помощью кнопки «кол.полей». Пожалуйста, дайте совет или решение по даной проблеме.

import sys
from tkinter import *
import tkinter
import tkinter as tk

root=Tk()
root.geometry("800x600")
frame = Frame(root)
frame.grid()

ak = 0
x1 = 0
x2 = 0
x3 = 0
x4 = 0
x5 = 0

num1 = Entry(root,font="Arial 30", width=4)
num1.grid(row = 1, column = 0, sticky=W, padx=20, pady=20)
num1.insert(0, "  0") # по умолчанию вводим "0" в поле ввода
num2 = Entry(root,font="Arial 30", width=4)
num2.grid(row = 2, column = 0, sticky=W, padx=20, pady=20)
num2.insert(0, "  0") # по умолчанию вводим "0" в поле ввода
num3 = Entry(root,font="Arial 30", width=4)
num3.grid(row = 3, column = 0, sticky=W, padx=20, pady=20)
num4 = Entry(root,font="Arial 30", width=4)
num4.grid(row = 4, column = 0, sticky=W, padx=20, pady=20)
num5 = Entry(root,font="Arial 30", width=4)
num5.grid(row = 5, column = 0, sticky=W, padx=20, pady=20)

calk = Entry(root,font="Arial 30", width=2)
calk.grid(row = 1, column = 2)


def pole():
    global ak
    ak = int(calk.get()) # или float(num1.get())
    ka.configure(text = ak)

for i in range(3,ak):
    #for i=3 to ak:
    zi = Label(root, text = xi, font="Arial 30 bold", bg= "white",  width=4)
    zi.grid(row = i, column = 5)    

        
ka = Label(root, text = ak, font="Arial 28", bg= "yellow",width=2)
ka.grid(row = 1, column = 4)    
buttonka = Button(root, font="Arial 20 bold", text = "Кол.полей",command = lambda:pole())
buttonka.grid(row = 1, column = 3)

def inputdata():
    global x1
    global x2
    x1 = int(num1.get()) # или float(num1.get())
    x2 = int(num2.get()) # или float(num2.get())
    z1.configure(text = x1)
    z2.configure(text = x2)
  
button = Button(root, font="Arial 30 bold",
                command = lambda: (inputdata()),
                fg="black", text = "Ввод данных")
button.grid(row = 3, column = 2, rowspan=3,columnspan=3, padx=0, pady=0)
z1 = Label(root, text = x1, font="Arial 30 bold", width=4)
z1.grid(row = 1, column = 5)
z2 = Label(root, text = x2, font="Arial 30 bold", width=4)
z2.grid(row = 2, column = 5)

  
root.mainloop()

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