我在加载和显示数据时遇到了一个大问题。我正在将 .csv 文件中的数据加载到 QVector,然后将其转换为 QBytearray 并通过 QPixmap 显示。
下面是带有代码示例的步骤:
- 将数据从 .csv 加载到 QVector。
将 QVector 转换为 QBytearray。
QByteArray InfraredCamera::retFrameBArray(const int* frameNumber) { Frame temp = Pictures[*frameNumber]; QVector<double>* vec = temp.retVecFrameValue(); QByteArray arr = QByteArray::fromRawData(reinterpret_cast<const char*>(vec), (vec->size())*(sizeof(double))); for(int i = 0; i< vec->size(); i++) arr.append(reinterpret_cast<const char*>(temp.retFrameValue(&i)),sizeof(double)); return arr; }
通过 QPixmap 显示:
int x = 3; //I chose number of frame to display QByteArray arr = test->Termo.retFrameBArray(x); QPixmap pic; pic.loadFromData(arr);
然后我的程序崩溃了。我该怎么办?
额外的问题:如果我可以将其中一些图像显示为电影,那就太好了。有人知道你怎么做吗?