簡體   English   中英

單擊按鈕時如何添加新的輸入框(Python,Tkinter)

[英]How to add a new entry box when clicking a button (Python, Tkinter)

嗨,我想在單擊按鈕時添加一個新的輸入框。 我怎樣才能做到這一點? 所做的是我能夠“循環”一組輸入框。 但是我希望通過單擊一個按鈕來一個一個地顯示輸入框。

做了什么

在此處輸入圖像描述

我的代碼:

import tkinter as tk
from tkinter import *

root = Tk()
root.title("Entry box")
root.geometry("700x500")

my_entries = []

def something():

    entry_list = ''
    for entries in my_entries:
        entry_list = entry_list + str(entries.get()) + '\n'
        my_label.config(text=entry_list)
    print(my_entries[0].get())

for x in range(5):
    my_entry = Entry(root)
    my_entry.grid(row=0, column=x, pady=20, padx=5)
    my_entries.append(my_entry)

my_button = Button(root, text="Click Me!", command=something)
my_button.grid(row=1, column=0, pady=20)


這里沒有太多工作,創建一個變量來跟蹤您要插入小部件的列,然后根據該數字插入它,例如:

# Rest of your code..

my_entries = []
count = 0 # To keep track of inserted entries
def add():
    global count
    MAX_NUM = 4 # Maximum number of entries
    if count <= MAX_NUM:
        my_entries.append(Entry(root)) # Create and append to list
        my_entries[-1].grid(row=0,column=count,padx=5) # Place the just created widget
        count += 1 # Increase the count by 1

Button(root, text='Add', command=add).grid(row=1, column=1, padx=10) # A button to call the function
# Rest of your code..

雖然我不確定您的其他 function 及其功能,但在您創建條目然后單擊該按鈕后它應該可以工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM