2010-06-09 3 views
10

하위 클래스의 신호를 어떻게 처리합니까? 내 하위 클래스가 QTextEdit에서 파생되었으며 신호 textChanged에 관심이 있다고 가정 해 보겠습니다. 객체를 자체에 연결하는 것은 어리석은 것처럼 보입니다. 간단히 textChange 메서드를 재정의 할 수 있어야합니다. 그러나 virtual이 아닙니다.Qt 서브 클래스에서 신호를 처리하는 방법은 무엇입니까?

허용되는 방법은 무엇입니까?

답변

11

유일한 방법은 새로운 슬롯을 만들고의 TextChanged()에 연결하는 것입니다, 그래서 당신은 신호를 무시/구현할 수 없습니다 :

connect(this, SIGNAL(textChanged(QString)), this, SLOT(slotTextChanged(QString))); 
3

어쩌면 어리석은 것처럼 보일지 모르지만 그것이 내가 한 방식입니다. 파생 클래스를 부모 클래스에서 방출 한 신호에 연결합니다.

하지만 다른 솔루션이 있으면 관심이 있습니다.

1

슬롯에 신호를 연결하는 완벽하게 괜찮습니다 같은 학급에서. 슬롯을 구현하고 연결하십시오. textChanged(QString)

관련 문제