0

我在加载和显示数据时遇到了一个大问题。我正在将 .csv 文件中的数据加载到 QVector,然后将其转换为 QBytearray 并通过 QPixmap 显示。

下面是带有代码示例的步骤:

  1. 将数据从 .csv 加载到 QVector。
  2. 将 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;
    }
    
  3. 通过 QPixmap 显示:

    int x = 3; //I chose number of frame to display
    QByteArray arr = test->Termo.retFrameBArray(x);
    QPixmap pic;
    pic.loadFromData(arr);
    

然后我的程序崩溃了。我该怎么办?

额外的问题:如果我可以将其中一些图像显示为电影,那就太好了。有人知道你怎么做吗?

4

0 回答 0