Как обрабатывать сигналы в подклассе Qt?

Как обрабатывать сигнал в подклассе? Скажем, мой подкласс получен из QTextEdit и интересуется сигналом textChanged. Кажется глупым связать объект с собой, я должен просто переопределить метод textChange, но это не virtual.

Каков приемлемый способ сделать это?

Ответ 1

Вы не можете реализовать/переопределить сигнал, поэтому единственный способ - создать новый слот и подключить его к textChanged():

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

Ответ 2

Возможно, это кажется глупым, но так, как я это сделал: подключение моего производного класса к сигналу, излучаемому родительским классом.

Но мне интересно, есть ли другие решения!

Ответ 3

Совершенно нормально подключить сигнал к слоту в том же классе. Итак, внесите свой слот и подключите его к textChanged(QString)