Russian Qt Forum
Ноябрь 23, 2024, 03:47 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: хочу сделать типо такого - QImage (ил другой объект) заполняется из потока  (Прочитано 6625 раз)
rik_mik_2raza
Новичок

Offline Offline

Сообщений: 6


Просмотр профиля
« : Июнь 18, 2020, 18:49 »

Доброго времени суток.
Есть поток QThread, он заполняет массив unsigned char* m_data;
из этого потока есть сигнал  emit sig_update_image(m_data); который передаст указатель слоту для отрисовки изображения
Далее слот update_image отображает картинку
Код:
void view::update_image(unsigned char *data)
{
   QImage image(data,w,h,byte_per_line, format);


   QPixmap pixmap->fromImage(image)
   m_pixmap->scaled(imageLabel->width(), imageLabel->height());

   ui->label->setPixmap(m_pixmap);
}

Получается слишком много перекладывания данных (данных может быть очень много не сжатое изображение ) Вызовов update_image тоже много.
Как сделать чтобы был один объект для отображения, а данные закачивать в него когда захочу?
Записан
navrocky
Гипер активный житель
*****
Offline Offline

Сообщений: 817


Погроммист


Просмотр профиля
« Ответ #1 : Июнь 26, 2020, 19:52 »

Почему бы в потоке не делать QImage и дальше его передавать сигналом в слот? QImage шарит свои данные, лишних копирований не будет.
Записан

Гугль в помощь
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.128 секунд. Запросов: 23.