如何将QVector <double>转换为QBytearray,然后通过QPixmap显示它?</double>

时间:2014-11-09 20:52:09

标签: c++ qt csv qpixmap qbytearray

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

Bellow是代码示例的步骤:

  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 个答案:

没有答案