将QByteArray图像从c ++传递到QML

时间:2013-07-23 05:54:39

标签: qml blackberry-10 blackberry-cascades qbytearray

我需要使用从c ++例程传递到QML的QByteArray在QML页面中显示png图像。我可以这样做吗?请帮帮我这个家伙..

1 个答案:

答案 0 :(得分:0)

假设您的数据位于名为QByteArray的{​​{1}}中,这应该有效:

data

现在,您可以在QML代码的QImage image; image.loadFromData(data); const QImage swappedImage = image.rgbSwapped(); const bb::ImageData imageData = bb::ImageData::fromPixels(swappedImage.bits(), bb::PixelFormat::RGBA_Premultiplied, swappedImage.width(), swappedImage.height(), swappedImage.bytesPerLine()); _image = bb::cascades::Image(imageData); 中显示_image。为此,您必须使用ImageViewQVariant进行转换。完成后,您可以在任何QVariant::fromValue(_image);中显示它。我假设你有一个名为ImageView的对象,它有一个feed属性(image):

QVariant