Найти - Пользователи
Полная версия: QThread: выполнение сигнала из другой функции
Начало » GUI » QThread: выполнение сигнала из другой функции
1
Razor
Здравствуйте, коллеги. Столкнулся с проблемой, решения которой не нашел.

Структура класса, наследующего QThread примерно такая:
class Thread(QtCore.QThread):
    def __init__(self, parent = None):
        QtCore.QThread.__init__(self, parent)
    def run(self):
        self.emit(QtCore.SIGNAL("Value(PyQt_PyObject)"), '2')
Принимающая сторона отлично запустит поток и обработает его. Но, допустим, что помимо __init__ и run мы имеем еще одну функцию (назовем ее WORK). Как посылать сигналы из этой, третьей функции (если посылать сигналы как из RUN, то они не отправятся)?
Rodegast
Точно также. Конечно “третья функция” должна выполняться в дополнительном потоке т.е. запускаться из метода run
Razor
Rodegast
Точно также. Конечно “третья функция” должна выполняться в дополнительном потоке т.е. запускаться из метода run
Рад снова вас видеть. Но это невозможно. Я последовал вашему примеру и в функции RUN находится запуск паука Scrapy. Нужно писать из другой функции. Перерыл кучу материала о QThread и ничего не нашел. Может вы все таки рассмотрите мое предложение, которое я отправил вам на почту?)

Сейчас все наследуется вот так:
class SpiderParse(QtCore.QThread, Spider):
    def __init__(self, settings, parent=None):
        super(SpiderParse, self).__init__(parent)
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