2017-08-05 191 views
0

,當我用Tkinter的Python中工作時,我遇到了一個有趣的問題是,當我在Linux終端運行Python程序,我的代碼打開一個Tkinter的部件是這樣的:退出Python程序

root = Tk() 
root.title("Hello World") 
txt = Text(root, width=60, height=20, wrap="word") 
txt.insert(INSERT, "HELLO WORLD") 
txt.insert(END, "---------------END---------------") 
txt.config(state=DISABLED) 
txt.bind("<Leave>", close_when_lost_focus) 
txt.pack() 
root.mainloop() 

,然後我強制退出python程序Ctrl + Z,Tkinter窗口仍然存在,直到我關閉終端後才能關閉它。 任何人都知道發生了什麼事?

回答

1

control-z不強制退出程序。這更像是把它睡覺,或暫停它。您可以通過輸入命令fg(前景)或bg(背景)來恢復程序。

fg將它帶到前臺,這使得它就好像您從未鍵入control-z一樣。

bg將作業置於後臺並讓它繼續運行,同時允許您在終端中鍵入其他命令。

欲瞭解更多信息,請參閱What is effect of CTRL + Z on a unix\Linux application

+1

正因爲如此,在Python腳本停止執行。一旦回到前臺進程組,它將開始處理先前生成的事件,當腳本睡着了。 – direprobs

+0

謝謝你,我以爲'ctrl + z'和'ctrl + c'都是強制退出命令:)) – tset0401