Russian Qt Forum
Ноябрь 24, 2024, 22:53 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: Подключение main.qml  (Прочитано 3322 раз)
Nerfair
Гость
« : Июнь 15, 2012, 12:08 »

Добрый день, до этого изучение QML/Qt сводилось к редактированию чужих проектов и примеров.
Сейчас решил написать все с 0.
Создаю пустой проект, добавляю main.cpp, main.qml и main.h
Получаю


Заполняю

QmlCppEmpty.pro

Код:
QT += core gui declarative

SOURCES += \
    main.cpp

HEADERS += \
    main.h

OTHER_FILES += \
    qml/main.qml


main.h
Код:
#ifndef MAIN_H
#define MAIN_H

#include <QObject>
#include <QDateTime>

class ApplicationData : public QObject
{
     Q_OBJECT
 public:
     Q_INVOKABLE QDateTime getCurrentDateTime() const {
         return QDateTime::currentDateTime();
     }
};

#endif // MAIN_H

main.cpp
Код:
#include <main.h>

#include <QApplication>
#include <QDeclarativeView>
#include <QDeclarativeContext>
#include <QUrl>

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

     QDeclarativeView view;

     ApplicationData data;
     view.rootContext()->setContextProperty("applicationData", &data);

     view.setSource(QUrl::fromLocalFile("./qml/main.qml"));
     view.show();

     return app.exec();
}

main.qml
Код:
// import QtQuick 1.0 // to target S60 5th Edition or Maemo 5
import QtQuick 1.1

Rectangle {
    width: 400
    height: 262

    Text {
        id: justText
        x: 12
        y: 124
        text: "I'm gonna go build my own theme park, with blackjack and hookers.";
        font.pixelSize: 12
    }
}


При запуске получаю ошибку что
Код:
..../Documents/SymbianQt/QmlCppEmpty-build-simulator-Simulator_Qt_for_MinGW_4_4__Qt_SDK_______/qml/main.qml: File not found 

Что я пропустил? Конкретно вижу что не используется "qmlapplicationviewer", но в примере его и нет, так же почему то main.qml добавляется как "other files".
Помогите пожалуйста Улыбающийся
Записан
mutineer
Гость
« Ответ #1 : Июнь 15, 2012, 12:12 »

main.qml находится по тому пути, который указан в ошибке?
Записан
Nerfair
Гость
« Ответ #2 : Июнь 15, 2012, 12:15 »

main.qml находится по тому пути, который указан в ошибке?

Нет, именно в этом и проблема, я не пойму почему.
Прикрепил весь проект.
Записан
mutineer
Гость
« Ответ #3 : Июнь 15, 2012, 12:16 »

ты указываешь относительный путь от бинарника. Но криэйтор создает бинарник и запускает его не из папки проекта, а из папки, которая лежит рядом с проектом (QmlCppEmpty-build-simulator-Simulator_Qt_for_MinGW_4_4__Qt_SDK_______)
Записан
Nerfair
Гость
« Ответ #4 : Июнь 15, 2012, 12:24 »

ты указываешь относительный путь от бинарника. Но криэйтор создает бинарник и запускает его не из папки проекта, а из папки, которая лежит рядом с проектом (QmlCppEmpty-build-simulator-Simulator_Qt_for_MinGW_4_4__Qt_SDK_______)

Понятно, решил проблему с помощью файла ресурсов,

конкретно
    
Код:
view.setSource(QUrl("qrc:/qml/main.qml"));

Спасибо за уделенное внимание!  Подмигивающий
« Последнее редактирование: Июнь 15, 2012, 12:28 от Nerfair » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.045 секунд. Запросов: 21.