How to create multiple threads
We will create multiple threads using Python. This is necessary in order to keep our GUI responsive.
Note
A thread is like weaving a fabric made out of yarn and is nothing to be afraid of.
Getting ready
Multiple threads run within the same computer process memory space. There is no need for Inter-Process-Communication (aka IPC), which would complicate our code. In this recipe, we will avoid IPC by using threads.
How to do it...
First we will increase the size of our ScrolledText
widget, making it larger. Let's increase scrolW
to 40 and scrolH
to 10.
# Using a scrolled Text control scrolW = 40; scrolH = 10 self.scr = scrolledtext.ScrolledText(self.monty, width=scrolW, height=scrolH, wrap=tk.WORD) self.scr.grid(column=0, row=3, sticky='WE', columnspan=3)
When we now run the resulting GUI, the Spinbox
widget is center-aligned in relation to the Entry
widget above it, which does not look good. We'll change this by left-aligning the widget.
Add sticky='W'
to the grid
...