Найти - Пользователи
Полная версия: почему не получается привязать слот к сигналу из другого класса?
Начало » GUI » почему не получается привязать слот к сигналу из другого класса?
1
Игнат
python 3, pyqt4

например вот так:

class test:
def __init__(self):
self.work = Work(self)
self.connect(self.ui.pushButton_start_1,
QtCore.SIGNAL('clicked()'),
self.work.parse)
self.work.parse не вызывается
а если создать слот в этом классе и написать self.test.parse() - слот срабатывает нормально и может уже вызвать self.work.parse()
Борисенков Сергей
Может так:
import sys
from PyQt4.QtCore import *
from PyQt4.QtGui import *

class Work(object):
def __init__(self,parent):
self.parent=parent
def parse(self):
print 1, self.parent

class test(object):
def __init__(self):
self.work = Work(self)
self.hellobutton = QPushButton("Say 'Hello world!'",None)
self.hellobutton.clicked.connect(self.work.parse)
#self.connect(self.ui.pushButton_start_1,
#QtCore.SIGNAL('clicked()'),
#self.work.parse)
if __name__ == '__main__':
app = QApplication(sys.argv)
t=test()
t.hellobutton.show()
sys.exit(app.exec_())
только непонятно зачем именно такое использование экземпляра другого класса?
Игнат
вот именно, что этот слот вызывается не из GUI, а через emit потока
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