Найти - Пользователи
Полная версия: Несколько вопросов по PyQT4
Начало » GUI » Несколько вопросов по PyQT4
1 2
dimabest
# 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))
dimabest
И еще, посылать сигнал должен именно объект потока, иначе словишь плавающий баг :)

http://python.su/forum/viewtopic.php?id=6829
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB