QT/ QML My Widget error

 
0
 
C++
ava
vovamakr | 11.12.2016, 13:28
Начал изучать QML и  наткнулся на проблему. Выводит пустой виджет,  без того что я  сделал в QML.
И выдает сообщение:
QML debugging is enabled. Only use this in a safe environment.
qrc:///StartGame.qml: File not found
Додаю и вывожу так:

QQuickWidget* qqWidget = new QQuickWidget;
    qqWidget->setSource(QUrl("qrc:///StartGame.qml"));

    //QQmlApplicationEngine engine;
    //engine.load(QUrl(QStringLiteral("qrc:/D:\Development\Pavlik\Qt\BattleCity /StartGame.qml")));

    QVBoxLayout* layout = new QVBoxLayout;
    layout->addWidget(qqWidget);
    setLayout(layout);

Подскажите  в чем может  быть проблема? Или как по  другому можна  вывести  на екран?
Kommentare (2)
ava
ss | 12.12.2016, 20:36 #
с путем к файлу qml что-то не так.
qrc:///StartGame.qml
может в слешах ?

без ресурсов
qqWidget->setSource(QUrl::fromLocalFile("c:/путь/имя файла.qml"));


из ресурса
qqWidget->setSource(QUrl("qrc:/имя файла.qml"));
ava
vovamakr | 13.12.2016, 11:31 #
Цитата (ss @  12.12.2016,  20:36 findReferencedText)
qqWidget->setSource(QUrl("qrc:/имя файла.qml")); 

У меня так:

int main(int argc, char *argv[])
{
    QGuiApplication app(argc, argv);

    QQuickView view;
    view.setTitle("Game");
    view.setSource(QUrl::fromLocalFile("qrc:/StartGame.qml"));
    view.show();

    return app.exec();
}



StartGame.qml в папке с програмой в корне.  но так  открывается пустое окно
а если так:

view.setSource(QUrl::fromLocalFile("D:/Development/Qt/StartGame.qml"));

то все норм.  но это  путь  захаркоджен, а мне нужно чтобы оно и на других компах открывалось
Registrieren Sie sich oder melden Sie sich an, um schreiben zu können.
Unternehmen des Tages
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Mitwirkende
  vovamakr   ss
advanced
Absenden