관련 에러 메시지 : 

QObject::connect No such slot QLineEdit::slotUpdateClearButton(const QString&)


해당 클래스는 QLineEdit을 상속 받은 custom 클래스다

다음과 같이 connect했으나 에러가 발생함.


connect(this, SIGNAL(textChanged(const QString&)), this, SLOT(slotUpdateClearButton(const QString&)));


해당 메시지는 slot이 없다는 것으로 오해 할 수 있다.


하지만 이건 QObject가 그런(?) slot과 연결할 수 없다는 의미이다.


즉 비록 QLineEdit을 상속 받았지만 해당 custom class 존재를 QObject가 모르겠다는 의미이다.


이 경우 

class CustomWidget : public QLineEdit

{

Q_OBJECT//이거를 넣어줘야 한다!!!!

public:

explicit CustomWidget (bool enableClearBtn = false, QWidget* parent = nullptr);

virtual ~CustomWidget ();




by 무위자연 2018. 11. 20. 15:59