Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » GUI
  • » QThread: выполнение сигнала из другой функции [RSS Feed]

#1 Июль 24, 2014 17:42:59

Razor
Зарегистрирован: 2012-09-11
Сообщения: 127
Репутация: +  2  -
Профиль   Отправить e-mail  

QThread: выполнение сигнала из другой функции

Здравствуйте, коллеги. Столкнулся с проблемой, решения которой не нашел.

Структура класса, наследующего 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, то они не отправятся)?

Офлайн

#2 Июль 24, 2014 20:19:05

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2756
Репутация: +  184  -
Профиль   Отправить e-mail  

QThread: выполнение сигнала из другой функции

Точно также. Конечно “третья функция” должна выполняться в дополнительном потоке т.е. запускаться из метода run



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#3 Июль 24, 2014 20:22:24

Razor
Зарегистрирован: 2012-09-11
Сообщения: 127
Репутация: +  2  -
Профиль   Отправить e-mail  

QThread: выполнение сигнала из другой функции

Rodegast
Точно также. Конечно “третья функция” должна выполняться в дополнительном потоке т.е. запускаться из метода run
Рад снова вас видеть. Но это невозможно. Я последовал вашему примеру и в функции RUN находится запуск паука Scrapy. Нужно писать из другой функции. Перерыл кучу материала о QThread и ничего не нашел. Может вы все таки рассмотрите мое предложение, которое я отправил вам на почту?)

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

Отредактировано Razor (Июль 24, 2014 20:25:45)

Офлайн

  • Начало
  • » GUI
  • » QThread: выполнение сигнала из другой функции[RSS Feed]

Board footer

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

Powered by DjangoBB

Lo-Fi Version