我已經在Tkinter中創建了一個「表格」,但作爲與OptionMenu關聯的單獨函數,我創建了另一個需要根據選擇添加/刪除的框架。我的代碼如下:等大小'表格'框架和刪除單個框架
def ChoiceBox(choice):
choice_frame = Frame(win1, bg='black')
choice_frame.grid(row=2, column=1, sticky="ew", padx=1, pady=1)
column = 0
if choice == "Fixed":
choice_frame.grid_forget()
tkMessageBox.showinfo("Message", "Fixed.")
elif choice == "List":
i = [0, 1, 2, 3]
for i in i:
choice_title = Label(choice_frame, text='Value %g'% float(i+1), bg='white', borderwidth=0, width=0)
choice_title.grid(row=0, column=column+i, sticky="nsew", padx=1, pady=1)
box = Entry(choice_frame, bg='white', borderwidth=0, width=0)
box.grid(row=1, column=column+i, sticky="ew", padx=1, pady=1)
elif choice == "Between" or "Bigger":
i = [0, 1]
choice_title1 = Label(choice_frame, text='Min Value', bg='white', borderwidth=0, width=0)
choice_title1.grid(row=0, column=column, sticky="nsew", padx=1, pady=1)
choice_title2 = Label(choice_frame, text='Max Value', bg='white', borderwidth=0, width=0)
choice_title2.grid(row=0, column=column+1, sticky="nsew", padx=1, pady=1)
for i in i:
box = Entry(choice_frame, bg='white', borderwidth=0, width=0)
box.grid(row=1, column=column+i, sticky="nsew", padx=1, pady=1)
我目前得到兩個獨立的表,但choice_frame「表」不是尺寸與其他同一個。因此,我希望將此表格作爲第一張表格的框架的一部分(然後以某種方式刪除本節),我已經開始工作了。另一個框架是frame_table(我製作原始表格的那個框架),並希望加入這個框架。
否則我想保持它像一個單獨的表,但我不能讓它消失選擇'固定'。此代碼純粹是我之前創建的OptionMenu的命令。任何幫助,我將不勝感激!謝謝。
更新:現在需要根據選擇獲取每行的單獨幀(請參閱下圖)。我在這非常掙扎!
我很困惑你要在這裏做什麼。你說的另一個框架是什麼('win1'也許?)?每次你調用這個函數,你都在創建一個新的框架。我認爲你想持有對創建框架的引用,然後決定是將它放在網格上還是「grid_forget」它(或者可能會銷燬舊的「Frame」,然後用新的框架替換它)... – mgilson
另一個框架是我在其中創建表格並且不是根框架。當我想根據選擇做幾件不同的事情時,我覺得我很困惑。 – user2063
當我按下按鈕時,我期待從這些Entry小部件中獲取值,但是我正在混合所有的定義。我會如何去做這件事? – user2063