Уведомления

Группа в Telegram: @pythonsu

#1 Март 19, 2020 16:37:20

McReaL
Зарегистрирован: 2020-03-19
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Как создать метод, который будет вызывать поток внутри класса

Здравствуйте! Пишу чат на UDP. Решил попробовать создать форму в QT5. А здесь все на классах…Никак не получается создать метод, который будет вызывать поток внутри класса. Метод-то написал, а как из этого метода обратиться к полю textBrowser, не понимаю……



Прикреплённый файлы:
attachment Help.txt (2,2 KБ)

Офлайн

#2 Март 19, 2020 23:24:36

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10031
Репутация: +  857  -
Профиль   Отправить e-mail  

Как создать метод, который будет вызывать поток внутри класса

McReaL
А здесь все на классах
Там не только всё на классах, там ещё всё многопоточно надо делать, иначе у тебя кнопки будут блокироваться, пока какое-то действие не закончит выполняться.

Думаю, рановато тебе и то, и другое делать. Сделай хотя бы консольный чат. Сделай хотя бы многопоточное оконное приложение. Когда сделаешь оба по отдельности, тогда и соединишь их в одну программу.



Офлайн

#3 Март 20, 2020 06:31:41

McReaL
Зарегистрирован: 2020-03-19
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Как создать метод, который будет вызывать поток внутри класса


py.user.next
Там не только всё на классах, там ещё всё многопоточно надо делать, иначе у тебя кнопки будут блокироваться, пока какое-то действие не закончит выполняться.
Спасибо за совет! Но! Консольный чат я написал, написал для клиентской части графический интерфейс, используя tkinter. Все работало, сообщения с сервера приходили(используя многопоточность!!!!). Решил попробовать QT5…Но Никак не получается создать метод, который будет вызывать поток внутри класса. Метод-то написал, а как из этого метода обратиться к полю textBrowser, не понимаю. Как обратиться к этому полю??????!!!! Объясните, пожалуйста!!!!!

Офлайн

#4 Март 20, 2020 07:08:45

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10031
Репутация: +  857  -
Профиль   Отправить e-mail  

Как создать метод, который будет вызывать поток внутри класса

McReaL
Метод-то написал, а как из этого метода обратиться к полю textBrowser
Вот тут посмотри, как делать потоки в PyQt.

В процессе работы программы обычно участвуют потоки, сигналы/слоты и таймеры. Вот их и изучай.

То есть тебе нужно сделать объект, который будет иметь слот, который будет задействован по сигналу от другого объекта. И в этом слоте у тебя в поле будет устанавливаться вот такой текст или вот такой текст. То есть слотов может быть много.

А по таймерам могут быть какие-то обновления и рассылки сигналов.

Пока ты не поймёшь эту архитектуру, ничего у тебя не выйдет.

McReaL
Консольный чат я написал
Я как-то не наблюдаю его, поэтому тебе и посоветовал сначала написать его.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version