QT передает данные между потоками, рабочая функция doWork() не запускаетсяC++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 QT передает данные между потоками, рабочая функция doWork() не запускается

Сообщение Anonymous »


Я новичок в Qt, и у меня возникла проблема. Я пытаюсь отправить данные из рабочего потока, используя сигнал dataReady для размещения в updateData основного окна. Моя проблема в том, что моя функция doWork не запускается и не передает сигнал. Проект разрабатывается на RPi 4B в Qt5. Что я сделал не так, так как перепробовал много примеров из интернета и ничего не меняется.

заголовочный файл рабочего

класс MyThreadWorker: общедоступный QThread { Q_OBJECT публика: плавать х; плавать y; плавать z; целое правильно; публика: MyThreadWorker(); частный: Adafruit_BNO055 * imu_first; QTimer * таймер; сигналы: void dataReady(float x, float y, float z, int правильно); общественные слоты: недействительный doWork(); недействительный старт(); }; исходный файл рабочего

void MyThreadWorker::start() { imu_first = новый Adafruit_BNO055; imu_first->imu_initialization(); таймер = новый QTimer(); таймер-> старт (1000); qDebug() sig_bno_handler(); gpioSleep(0, 0, 1000); imu_first-> savevector (); //запись данич х=imu_first->myStruct.x; y=imu_first->myStruct.y; z=imu_first->myStruct.z; правильно = imu_first-> init_correct; qDebug() старт(); //установка диапазона ползунков температуры ui->slider1->setMinimum(10); ui->slider2->setMinimum(10); ui->slider1->setMaximum(50); ui->slider2->setMaximum(50); //imuobiekt->imu_initialization(); gpioSleep(0, 0, 2000); } void MainWindow::updateData(float x, float y, float z, int правильно) { //обработка данных в главном окне } Я очень хочу, чтобы это сработало.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • C# Очереди сообщений между потоками и общие проблемы с потоками
    Anonymous » » в форуме C#
    0 Ответы
    29 Просмотры
    Последнее сообщение Anonymous
  • C# Очереди сообщений между потоками и общие проблемы с потоками
    Anonymous » » в форуме C#
    0 Ответы
    33 Просмотры
    Последнее сообщение Anonymous
  • C# Очереди сообщений между потоками и общие проблемы с потоками
    Anonymous » » в форуме C#
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous
  • Руководитель работ повторяет doWork() несколько раз
    Anonymous » » в форуме Android
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous
  • BackgroundWorker.RunworkerAsync не достигает метода DoWork
    Anonymous » » в форуме C#
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C++»