2016-11-22 79 views
1

有人可以告訴我,我的腳本有什麼問題._。 它運行,但沒有發生。 我的目的是創建一個新窗口,如果我點擊「mainWindow」上的「輸入按鈕」。 和我的主窗口我以前不顯示任何內容:( 誰能告訴我要修復的線索這個問題? 感謝您的時間:)我的代碼運行,但沒有發生什麼(Tkinter,Python3)

from tkinter import* 

master = Tk() 

# create frame menu 
def mainWindow(self, master): 
    menuFrame = Frame(master) 

    inputButton = Button(menuFrame, text="Input Data", command=windowInput) 
    showButton = Button(menuFrame, text="Show Data") 
    deleteButton = Button(menuFrame, text="Delete Data") 

    menuFrame.pack(fill=BOTH) 
    inputButton.grid(row=0, column=0) 
    showButton.grid(row=1, column=0) 
    deleteButton.grid(row=0, column=1) 


    # create new window 
def windowInput(): 
    window_input = Toplevel(master) 
    window_input.wm_title("Input") 
    inputFrame = Frame(master) 

    kodeLabel = Label(inputFrame, text="Book Kode") 
    nameLabel = Label(inputFrame, text="Book Name") 
    priceLabel = Label(inputFrame, text="Book Price") 
    kodeEntry = Entry(inputFrame) 
    nameEntry = Entry(inputFrame) 
    priceEntry = Entry(inputFrame) 
    submitButton = Button(inputFrame, text="Submit", command=NONE) 
    backButton = Button(inputFrame, text="Back", command=NONE) 

    inputFrame.pack() 
    kodeLabel.grid(row=0, column=0) 
    nameLabel.grid(row=1, column=0) 
    priceLabel.grid(row=2, column=0) 
    kodeEntry.grid(row=0, column=1) 
    nameEntry.grid(row=1, column=1) 
    priceEntry.grid(row=2, column=1) 
    submitButton.grid(row=3, column=0, columnspan=2) 
    backButton.grid(row=3, column=2) 


if __name__ == "__main__": 
    master.mainloop() 

回答

2

如果你不def mainWindow(self, master):通過類似的東西def mainWindow():

if __name__ == "__main__": 
    mainWindow() 
    windowInput() 
    master.mainloop() 

它守:如果從

if __name__ == "__main__": 
    master.mainloop() 

改變if語句ld工作

+0

感謝兄弟,我的腳本現在工作。但如果主blablabla我只把mainWindow()。 如果我使用windowInput(),當我開始我的腳本我有2個窗口在同一時間hehehe 感謝兄弟,非常有益 – Oncom

+0

我很高興你的代碼工作;)如果你想你可以檢查我的答案作爲答案誰解決了你的問題! – andrepogg

相關問題