2
var newObject = Qt.createQmlObject('import bb.cascades 1.0; Label {text: "Hold on cowboy!" }', parentContainer, "dynamicSnippet1");

実行され、オブジェクトが返されますが、画面には表示されません。ページQMLのコンテナに親にしました。エラーはスローされません。これがカスケードで機能しないかどうか疑問に思っています。

BB10 カスケードのドキュメントに記載されています: https://developer.blackberry.com/cascades/reference/qml-qt.html#createQmlObject-method

4

3 に答える 3

1

OK、私のケースに問題が見つかりました。
Qt.createQmlObject()は次のように使用しました:

import QtQuick 2.2;

Rectangle {
    id: root
    width: 300; height: 300

    Row {
        id: itemContainer
        Component.onCompleted: {
            var newObject = Qt.createQmlObject('import QtQuick 2.2; Rectangle {color: "red"; width: 200; height: 200}', itemContainer, "");
        }

        Rectangle {
            width: 100; height: 50
            color: "Yellow"
        }
    }
}

これは機能しないため、次のように変更しました。

import QtQuick 2.2;

Rectangle {
    id: root
    width: 300; height: 300

    Row {
        id: itemContainer

        Rectangle {
            width: 100; height: 50
            color: "Yellow"
        }

        Component.onCompleted: {
            var newObject = Qt.createQmlObject('import QtQuick 2.2; Rectangle {color: "red"; width: 200; height: 200}', itemContainer, "");
        }
    }
}

動作しますが、期待どおりではありません! ご覧のとおりQt.createQmlObject()、要素内で実行しても、Row要素の重要な推定の一部が再計算されませんRowこれをhttps://bugreports.qt-project.org/browse/QTBUG-40356
でバグとして報告しました

于 2014-07-22T08:38:07.763 に答える
0

問題はサイズや位置にあるように見えます。これを試して:

var newObject = Qt.createQmlObject('import bb.cascades 1.0; Label {text: "Hold on cowboy!"; anchors.fill: parent }', parentContainer, "dynamicSnippet1");

また、親がウィンドウサイズに固定するようにしてください(ルート要素-まだの場合)。

発生する可能性のあるもう1つの問題は、フォントの色が背景と一致することです。そのため、それも確認してください。

于 2013-01-14T23:52:56.890 に答える