У меня есть приложение Qt с таким видом main () ...
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
MainWindow mainWin;
... A separate, non-GUI thread is launched here
mainWin.Init();
mainWin.show();
app.exec();
}
Этот другой поток, который создается до того, как mainWin должен знать, когда он может начать взаимодействие с mainWin. Но поскольку mainWin использует сигналы, слоты, таймеры и т.д. Qt, он не готов к работе до тех пор, пока не будет запущен цикл событий (через exec ()).
Мой вопрос: есть ли какой-либо сигнал или событие, которое испускается при запуске цикла событий?
Учтите это. В mainWin.Init () вы можете создать что-то вроде QTimer и даже вызвать .start (), чтобы запустить его. Но на самом деле он не будет запускаться и запускать события, пока не будет вызван exec (). Вот почему мне нужно знать, когда действительно начался цикл событий.