2010-06-09 20 views
10

Come si elabora un segnale di in una sottoclasse? Diciamo che la mia sottoclasse deriva da QTextEdit ed è interessata al segnale textChanged. Sembra sciocco connettere un oggetto a se stesso, dovrei essere in grado di ignorare semplicemente il metodo textChange - ma non è virtual.Come elaborare i segnali in una sottoclasse Qt?

Qual è il modo accettato per farlo?

risposta

11

Non si può implementare/ignorare un segnale, quindi l'unico modo è quello di creare un nuovo slot e collegarlo al TextChanged():

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

Forse sembra sciocco, ma è così che l'ho fatto: collegare la mia classe derivata al segnale emesso dalla classe genitore.

Ma sono interessato se ci sono altre soluzioni!

1

E 'perfettamente ok per collegare un segnale a uno slot nella stessa classe. Quindi implementa lo slot e collegalo a textChanged(QString)

Problemi correlati