Добрый день! Не могу найти как запустить QThread из другого класса.
class some;
class some2;
thread1 = new QThread;
connect(thread1, &QThread::started, some, &SomeClass::Go);
connect(some, &SomeClass::s_stop, thread1, &QThread::quit);
И вот теперь самое главное, я хочу запускать поток по сигналу.
connect(some2, &SomeClass2::s_start, thread1, &QThread::start);
Такая вот запись не работает, пишет что слишком мало аргументов у сигнала. Если написать thread1-> start все работает. Но, мне нужно именно по сигналу. Возможно ли так сделать?
connect(some2, &SomeClass2::s_start, thread1, QThread::start);
Исправьте на
connect(some2, &SomeClass2::s_start, thread1, &QThread::start);
В этой строке тоже
connect(thread1, QThread::started, some, &SomeClass::Go);
на
connect(thread1, &QThread::started, some, &SomeClass::Go);
Если посмотреть внимательней, то сигнатура метода QThread::start выглядит так:
void start(QThread::Priority);
Соответственно и Ваш сигнал должен иметь аналогичную сигнатуру:
void s_start(QThread::Priority);
Здравствуйте, выполняю задания на С++ и всё хорошо, только вот проблема с таймеромВот кусок самого задания:
Не запускается проект на Qt,после того как начал добавлять свои файлы,написанный на с++
Задача: скрипт определяет высоту блока в зависимости от наличия отсутствия в теле body другогоЯ использовал следующий вариант: