System.Windows.Forms.Form.Show()(這個問題問得originally posted到Python-Tkinter的郵件列表)的Tkinter相當於非阻塞從.NET
我試圖複製一個無阻塞(或無模式)從Windows .NET應用程序使用Tkinter的窗口行爲。
我得到的應用程序顯示了一個響應某個事件的新窗口(可能是非GUI事件),並且執行繼續,顯示新窗口。
下面是相關代碼:
private void foo(object sender, EventArgs e)
{
Form1 f = new Form1();
f.Show(); // displays a window and continues
Console.WriteLine("Form created");
}
最重要的一點是調用.NET類System.Windows.Forms.Form/Control
的Show() method。
foo()
函數可以從非GUI應用程序調用,作爲對某些信號的響應,甚至可以從C++應用程序調用。
重點是沒有明確的等待事件,窗口是無模式的。
我如何在Tkinter中實現類似的行爲? 是否有任何Tkinter慣用的方法來避免調用mainloop()
或wait_window()
方法(它們都被阻塞)?
可能相關:[Tkinter中的非阻塞信息對話框](http://stackoverflow.com/questions/11418625/non-blocking-info-dialog-in-tkinter) – sloth
@DominicKexel是的,它似乎是你找到的問題非常相似,所以相關。我以前沒有找到它。我的問題雖然給重要的.NET引用期望的行爲的例子。對那些想要回答它的人可能會有所幫助。 – mloskot