2017-09-11 116 views
0

即時通訊工作在項目,但它不太好。
此代碼:Tkinter GUI問題

from tkinter import * 

def NewFile(): 
    new = Label(root, text="about \n") 
def OpenFile(): 
    openf = Label(root, text="about \n") 
def About(): 
    about = Label(root, text="about \n") 

root = Tk() 
menu = Menu(root) 
root.config(menu=menu) 
filemenu = Menu(menu) 
menu.add_cascade(label="File", menu=filemenu) 
filemenu.add_command(label="New", command=NewFile) 
filemenu.add_command(label="Open...", command=OpenFile) 
filemenu.add_separator() 
filemenu.add_command(label="Exit", command=root.quit) 

helpmenu = Menu(menu) 
menu.add_cascade(label="Help", menu=helpmenu) 
helpmenu.add_command(label="About...", command=About) 
body = Label(root, text="") 
mainloop() 

不工作我怎麼需要它。
當您點擊file > new,file > openhelp > about時,它被置於寫入證明消息。

它什麼都不做

我怎麼可以把它做什麼想要什麼?

回答

1

@Lafexlos是正確的。 您可以在GUI設計中使用所有python類型(列表,字典,變量和更多...),最重要的點how to manage all GUI elements,所以都需要一個可訪問的狀態。

不要destroy任何GUI元素,更改和重用它。

不包括任何外部命令mainloop(如:文件,網絡等)

所有GUI應用程序所需的3關鍵部分:INIT >> BUILD >> RUN否則,你得到了很多痛苦。

使用GUI元素text作爲variable,當然如果所有元素都是可訪問的!

我希望有幫助,並接受@Lafexlos答案不是我的! 此代碼在Python2.7上工作

1

你不在你的小部件上使用幾何管理器(包/網格/地點),所以tkinter不會顯示給你。另外,不是每次點擊都創建新的標籤,您可以在全局範圍內創建全部三個,也可以在點擊時創建一個標籤並根據您的需要更改其值。