QQuickWidget
複数の QML の子を持つの画像を保存していますが、空の画像しかありません。
C++ 側:
QQuickWidget* content..
content->setSource(QUrl("qml:/main.qml"));
QPixmap *pm = content->grab(QRect(QPoint(0,0),QSize(-1,-1));
pm->save("someFilename.png", 0, 100);
QML 側:
Rectangle{ width: 5; height: 5; color: "yellow"; objectname: "rootobj"}
QML では、子を動的に追加して、画像に表示できるようにしたいと考えています。スロットへの接続を使用してメソッドを試してみQQuickWindow
grabWindow
ましたが、機能しますが、ウィンドウの可視領域のみをキャプチャし、QML 全体をキャプチャする必要があります。
私は、これはロケット科学ではないと信じています。返信ありがとうございます。
補遺:
OK、画像グラバーを呼び出す前にすべてのqmlの子を見ることができるので、レンダリングの前後の問題ではないと思います。正確でなくて申し訳ありません。
C++ 側:
QQuickWidget* content..
content->setSource(QUrl("qml:/main.qml"));
//do all my dynamic qml children adding
すべてのqmlを視覚的に確認できるようになったら:
QPixmap *pm = content->grab(QRect(QPoint(0,0),QSize(-1,-1));
pm->save(....
私が間違っていない限り、レンダリングの問題はないと思います。ありがとうございました!