Я планирую сделать простое приложение, в котором я могу отправлять сообщения другим людям в телеграмме с графическим интерфейсом tkinter без зависания. Вот мой текущий код:
from telethon.sync import TelegramClient
from telethon.tl.functions.messages import GetDialogsRequest
from telethon.tl.types import InputPeerEmpty
import tkinter as tk
class TelegramApp:
def __init__(self, master):
width = master.winfo_screenwidth() - round(master.winfo_screenwidth() * 0.5)
height = master.winfo_screenheight() - round(master.winfo_screenheight() * 0.1)
x = master.winfo_screenwidth() // 2 - width // 2
y = master.winfo_screenheight() // 2 - height // 2
master.geometry('{}x{}+{}+{}'.format(width, height, x, y))
self.btn = tk.Button(master, text="ah", command=self.connect)
self.btn.pack(side=tk.LEFT)
def connect(self):
client.connect()
if not client.is_user_authorized():
client.send_code_request(phone)
client.sign_in(phone, input('Enter the code: '))
else:
main()
root = tk.Tk()
app = TelegramApp(root)
root.mainloop()
Прямо сейчас, когда я нажимаю на self.btn, он зависает в графическом интерфейсе, но успешно подключается. Я планирую добавить поле ввода, в которое я могу ввести любое имя пользователя, поле ввода, в которое я могу вводить сообщения, сопровождаемые кнопкой, которая будет отправлять сообщение этому имени пользователя. Я также планирую список, в котором он будет получать все мои группы и перечислять их там, чтобы я мог выбрать группу и т. д. В основном я просто хочу, чтобы графический интерфейс мог выполнять всю эту работу без зависаний.< /сильный>