Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 17, 2010 06:32:26

dimabest
От:
Зарегистрирован: 2009-02-12
Сообщения: 253
Репутация: +  0  -
Профиль   Отправить e-mail  

Несколько вопросов по PyQT4

# coding: utf8

from PyQt4.QtCore import *

class MyThread(QThread):
def run(self):
result = 3 + 2
# посылаем из потока сигнал с результатом
self.emit('mySignal(PyQt_PyObject)', result)


class Controller(object):
def start_thread(self):
self.thread = MyThread()
# перед запуском потока подписываемся на сигнал
# метод draw_progress будет вызван в главном потоке, поэтому никаких ошибок :)
# результат работы потока метод получит с параметром result
QObject.connect(self.thread, SIGNAL('mySignal(PyQt_PyObject)'), self.draw_progress)
self.thread.start()

def draw_progress(self, result):
self.ui.textEdit.setPlainText(str(result))



Офлайн

#2 Ноя. 17, 2010 06:39:39

dimabest
От:
Зарегистрирован: 2009-02-12
Сообщения: 253
Репутация: +  0  -
Профиль   Отправить e-mail  

Несколько вопросов по PyQT4

И еще, посылать сигнал должен именно объект потока, иначе словишь плавающий баг :)

http://python.su/forum/viewtopic.php?id=6829



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version