Я пытаюсь отобразить изображение в Qt, которое поступает как данные из другой функции.
Эта функция сохраняет строки изображения в виде знака без знака **
Я прочиталгде-то я мог бы как-то сохранить его как QByteArray, а затем создать QPixMap, а затем установить QPixMap метки для его отображения, но мне не очень повезло.
Это то, что у меня было:
unsigned char* fullCharArray = new unsigned char[imheight * imwidth];
for (int i = 0 ; i < imheight ; i++)
for (int j = 0 ; j < imwidth ; j++)
fullCharArray[i*j+j] = imageData[i ][j];
QPixmap *p = new QPixmap(reinterpret_cast<const char *>(fullCharArray));
ui->viewLabel->setPixMap(p);
Но это, кажется, дает мне ошибку, и в любом случае может быть неправильным.Когда я пытался вызвать setPixMap (p []), ошибка исчезает, но изображение не отображается в метке.
imageData - это двумерный массив, который заполняется другой моей функцией.Лучше всего я решил, что для создания нового QPixMap мне пришлось преобразовать его в одномерный массив и выполнить там вычисления вручную.Это то, что делает двойной цикл For.
Так есть ли лучший способ отображения данных этого изображения в Qt?