QPushButton의 클릭 (bool) 이벤트를 내 위젯의 개인 슬롯 mySlot()에 연결했습니다. 그러나 슬롯은 절대 호출되지 않습니다 (mySlot()에 중단 점을 배치했습니다). 저는 C++과 Qt5를 사용하고 있습니다.자신의 인스턴스에 대한 신호가 작동하지 않습니다.
MyLayout.h
class MyLayout : public QWidget
{
Q_OBJECT
public:
MyLayout(QWidget* parent = NULL);
private:
QPushButton *next;
private slots:
void mySlot();
}
MyLayout.cpp
MyLayout::MyLayout(QWidget* parent) : QWidget(parent)
{
next = new QPushButton("Next Step");
QObject::connect(next, SIGNAL(clicked(bool)), this, SLOT(mySlot()));
}
void MyLayout::mySlot() { /* do something */ }
어떤 아이디어 : 나는 내 코드의 최소 버전을 썼다?
신호/슬롯 헬퍼를 생성하기 위해 moc 용'Q_OBJECT' 매크로가 누락되었습니다. – drescherjm
http://stackoverflow.com/questions/22221798/connect-no-such-slot-qtreeview – drescherjm
방금 내 생성자에 'QWidget'매개 변수를 추가했습니다. 하지만 'Q_OBJECT'매크로를 추가하면 링커 오류가 발생합니다. – Felix