新版的QtQuick已經改用QQmlApplicationEngine取代原本的viewer class,因此要取得application的snapshot作法也不大相同:

class SnapshotMgr

{

void getSnapshot(void);

QQmlApplicationEngine m_pEngine;

}

void SnapshotMgr::getSnapshot(void)

{

if(!m_pEngine)
return-1;

foreach(QObject*obj,m_pEngine->rootObjects()){
QQuickWindow*window=qobject_cast<QQuickWindow*>(obj);
if(window){

QImageimage=window->grabWindow();
image.save("./test_screenshot.jpg");
qDebug()<<image;
}
}
return0;
}

創作者介紹
創作者 diro 的頭像
diro

Diro - 探索生活中的美好事物

diro 發表在 痞客邦 留言(0) 人氣()