我試圖創建一個函式,在每次使用提交到資料庫的函式時創建一個以變數命名的按鈕(每個提交到資料庫的資料集都有一個按鈕)。目前,我可以讓按鈕自己命名,但我在每次使用時抵消這一行時遇到了麻煩。我可以只添加一個簡單的計數器并設定row=n,但在這一點上我不確定我的方法是否是最好的。對于每個資料集,都需要為其生成一個按鈕。最好的辦法是運行一個程式,根據我的資料集生成按鈕(我不太清楚該怎么做),或者讓我的提交程式回傳一個帶有row=counter的按鈕?或者還有其他我沒有想到的解決方案嗎?
***注:回過頭來看,我的按鈕在程式重新啟動后并沒有停留,這很有意義。如果我打算使用提交/計數器的解決方案,我還必須讓資料在代碼中存盤起來。
***最小的可復制代碼:
***最小的可復制代碼
from tkinter import *
root = Tk()
root.title('Button')
root.geometry('400x400')
f_name = Entry(root, width=30)
f_name.grid(row=0, column=1)
f_name_lbl = Label(root, text="First Name:")
f_name_lbl.grid(row=0, column=0)
def gen_button()。
auto_button = Button(root, text=f_name.get() )
auto_button.grid(row=2, column=0, columnspan=2)
submit_btn = Button(root, text="submit:", command=gen_button)。 grid(row=1, column=0, columnspan=2, ipadx=100)
我相信我這樣做是對的,我很抱歉,我是python和堆疊溢位的新手
uj5u.com熱心網友回復:如果你沒有指定行,grid將自動選擇最后占用的行之后的下一行。
auto_button.grid(column=0, columnsspan=2)
不過,如果你為這些按鈕創建一個單獨的框架,你可以使用pack,這有點容易,因為pack沿著一個側面排列小部件。在你的案例中,你希望它們被排列在框架的頂部,就在任何其他小部件的下面。
def gen_button():
auto_button = Button(button_frame, text=f_name.get()
auto_button.pack(side="top"/span>)
submit_btn = Button(root, text="提交:", command=gen_button)
submit_btn.grid(row=1, column=0, columnspan=2, ipadx=100)
button_frame = Frame(root)
button_frame.grid(row=2, column=0, columnspan=2, sticky="nsew">)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/330573.html
標籤:
上一篇:沒有懸停的懸停效果
下一篇:按鈕,將其文本改為檔案名
