#python #user-interface #tkinter #dynamic #ttk
#python #пользовательский интерфейс #tkinter #динамический #ttk
Вопрос:
Я принимаю число n от пользователя и хочу отобразить n вкладок с определенной информацией, как я могу это сделать?
import tkinter as tk
from tkinter import ttk
root = tk.Tk()
tabControl = ttk.Notebook(root)
tab1 = ttk.Frame(tabControl)
tab2 = ttk.Frame(tabControl)
tabControl.add(tab1, text ='Tab 1')
tabControl.add(tab2, text ='Tab 2')
tabControl.pack(expand = 1, fill ="both") # i want to make n such tabs
ttk.Label(tab1, text ="some info here").grid(column = 0, row = 0)
ttk.Label(tab2, text ="more info here").grid(column = 0, row = 0)
root.mainloop()
Ответ №1:
Может быть, попробуйте это:
n = int(input("How many Tabs do you want to open?"))
tabs = []
for i in range(n):
tabs.append(ttk.Frame(tabControl))
for i, tab in enumerate(tabs):
tabControl.add(tab, text=f"Tab {str(i 1)}")
Затем вы можете редактировать каждую вкладку, просматривая список вкладок.
Комментарии:
1. Следует избегать использования консоли
input
в приложении с графическим интерфейсом.