2013-07-23 2 views
1

C++ 루틴에서 QML로 전달 된 QByteArray를 사용하여 QML 페이지에 png 이미지를 표시해야합니다. 어떻게해야합니까? 당신이 QByteArraydata라는 이름의 데이터를 가정 ..이 사람들과 함께QByteArray 이미지를 C++에서 QML로 전달

+0

http://mattgemmell.com/2008/12/08/what-have-you-tried/ 답장을 보내 – albertjan

답변

0

를 도와주세요,이 작동합니다 : 이제 QML 코드에 ImageView에서 _image를 표시 할 수 있습니다

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); 

. 이를 달성하려면 QVariant : QVariant::fromValue(_image);로 변환해야합니다. 완료되면 ImageView에 표시 할 수 있습니다. 나는 당신이 image 특성 (QVariant)가 feed라는 이름의 객체가 있다고 가정 :

ImageView { 
    image: feed.image 
} 
+0

감사합니다 . 어떻게이 _image를 QML의 ImageView에 전달할 수 있습니까? 많은 방법을 시도했지만 모두 실패합니다 ... !! –

+0

설명을 위해 내 대답이 업데이트되었습니다. 기본적으로 이미지를''QVariant''로 변환해야합니다. 그러면 모든 것이 제대로 작동합니다. –

+0

답장을 보내 주셔서 감사합니다. 한 번 더 도움주세요. 어떻게 이미지 속성 (QVaiant)을 feed라는 개체에 설정할 수 있습니까? –