Я написал код во время обучения Tkinter, и когда я попытался его пополнить, он не показывал окно, однако, когда он запускает только основной цикл, который он делает.Почему потоки не отображаются в окне Tkinter?
import socket,threading,time
from Tkinter import *
class Chat(Frame):
def __init__(self,root):
Frame.__init__(self,root)
self.text=Text(self, bg='black', fg='white')
self.text.configure(state=DISABLED)
self.text.configure(state=NORMAL)
self.text.insert(END, 'hello\n'*40)
self.text.configure(state=DISABLED)
self.text.pack()
def main():
root=Tk()
root.configure(background='black')
c=Chat(root)
c.pack()
root.mainloop()
#t=threading.Thread(target=root.mainloop)
#t.start()
if __name__=='__main__':
main()
Кажется, проблема с текстовым виджетам, но я не знаю, что с этим не так. Когда я удаляю строку вставки, поле появляется с заголовком, но с этой строкой оно не появляется. В чем проблема?
Что именно вы хотите сделать в новой теме? – cdonts
@cdonts Я хочу запустить mainloop как нить, поэтому я могу заставить программу делать другие вещи, пока окно tkinter не работает. –
Вместо этого вы должны запустить mainloop в основном потоке и запустить новые потоки, когда программе нужно делать другие вещи. – cdonts