Recentemente ho migrato il mio progetto Qt da Linux a Vista, e ora sto eseguendo il debug dei segnali ciecamente.App GUI Qt: avviso se QObject :: connect() non è riuscito?
Su Linux, se QObject :: connect() non riesce in una build di debug, viene visualizzato un messaggio di avviso su stderr. Su Windows, non è disponibile l'output della console per le applicazioni GUI, solo una chiamata OutputDebugString.
Ho già installato DebugView e cattura correttamente il mio output qDebug(), ma ancora nessun avviso sui segnali non riusciti.
Una possibile soluzione sarebbe utilizzare il completamento automatico di QtCreator per i segnali, ma mi piace Eclipse e l'utilizzo di entrambi è un PITA. Qualche idea su come ottenere informazioni sul segnale/slot in fase di runtime?
Modifica: ho appena realizzato connect() restituisce bool, che risolve il problema immediato, per quanto brutto possa essere. Tuttavia, questo non risolve i casi in cui QMetaObject::connectSlotsByName() non riesce e questo viene eseguito automaticamente con i widget.
Questo è veramente utile! – Pepe