[Tkinter-discuss] A non-blocking way to display a window?

Mateusz Loskot mateusz at loskot.net
Tue Oct 8 18:01:49 CEST 2013


Hi,

I'm trying to replicate a non-blocking (or modeless) window behaviour
from a Windows .NET application using Tkinter.
The application I've got shows a new window in response to
some event (might be non-GUI event) and the execution continues
leaving the new window displayed.

Here is the relevant code:

        private void foo(object sender, EventArgs e)
        {
            Form1 f = new Form1();
            f.Show(); // displays a window and continues
            Console.WriteLine("Form created");
        }

The important bit is call to the Show() method [1] of
.NET class System.Windows.Forms.Form.

The foo() function may be called from a non-GUI application,
as response to some signal or even invoked from a C++ application.

The point is there is no explicit waiting for events and the window is modeless.

How can I achieve similar behaviour in Tkinter?
How to avoid calling mainloop() or wait_window() methods, which both
are blocking?

[1] http://msdn.microsoft.com/en-us/library/system.windows.forms.control.show.aspx

Best regards,
-- 
Mateusz  Loskot, http://mateusz.loskot.net


More information about the Tkinter-discuss mailing list