У меня есть приложение Qt, которое было разработано с использованием Qt Creator и сопровождающего его инструмента GUI. У меня есть основной поток TheGui
и рабочий поток, созданный основным потоком WorkerThread
(называемый thread
).
Проблема у меня возникает, когда я создаю слот в графическом интерфейсе с помощью
public slot:
void updateTable(string str);
в заголовочном файле GUI и сигнал void sendList(string str);
в заголовочном файле рабочего потока, слот никогда не вызывается. Я соединил их, используя
connect(&thread, SIGNAL(sendList(string str),
this, SLOT(updateTable(string str)));
внутри конструктора в cpp-файле GUI. Я сделал что-то подобное, кроме слота в рабочем потоке и сигнала от графического интерфейса, и он работал нормально. Из использования отладчика я знаю, что сигнал sendList действительно вызывается, он просто никогда не входит в него.
Есть мысли?