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

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

Страниц: [1]   Вниз
  Печать  
Автор Тема: Qt Quick, QML  (Прочитано 4583 раз)
saim
Гость
« : Сентябрь 01, 2014, 09:31 »

Доброго времени суток !
Начал разбираться с технологией Qt Quick и на элементарном примере застрял ..
При сборке , что на виртуальном , что на реальном устройстве отображается черный экран !
Кто сталкивался  помогите не могу разобраться , по всем законам все должно работать ...
Исходники !
main.cpp
Код:
#include <QApplication>
#include <QQmlApplicationEngine>

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

    QQmlApplicationEngine engine;
    engine.load(QUrl(QStringLiteral("qrc:///main.qml")));

    return app.exec();
}

и собственно сам main.qml
Код:
import QtQuick 1.1
import QtQuick.Controls 1.1
import QtQuick.Window 2.0

ApplicationWindow {
    id: appWindow
    title: qsTr("Hello World")
    width: 640
    height: 480
    Text {
            text: qsTr("Hello World")
            anchors.centerIn: parent
        }


}

ЗАРАНЕЕ СПАСИБО !
Записан
kibsoft
Хакер
*****
Offline Offline

Сообщений: 625


Просмотр профиля WWW
« Ответ #1 : Сентябрь 01, 2014, 09:37 »

Если Android, то используйте DDMS, чтобы увидеть лог при запуске.
Записан

http://kibsoft.ru - Download the Qt Media Encoding Library here

The apps that were written using QtMEL:
http://srecorder.com - Screen recording software
saim
Гость
« Ответ #2 : Сентябрь 01, 2014, 09:57 »

Это плагин для Qt ?
Записан
navrocky
Гипер активный житель
*****
Offline Offline

Сообщений: 817


Погроммист


Просмотр профиля
« Ответ #3 : Сентябрь 01, 2014, 10:28 »

1) QtQuick 2.2 а не 1.1
2) Окну надо принудительно сделать visible: true

Код:
import QtQuick 2.2
import QtQuick.Controls 1.1
import QtQuick.Window 2.0

ApplicationWindow {
    id: appWindow
    title: qsTr("Hello World")
    width: 640
    height: 480
    visible: true
    Text {
            text: qsTr("Hello World")
            anchors.centerIn: parent
        }
}
Записан

Гугль в помощь
saim
Гость
« Ответ #4 : Сентябрь 01, 2014, 10:48 »

Спасибо !! Помогло !
Записан
saim
Гость
« Ответ #5 : Сентябрь 01, 2014, 22:59 »

Еще один трабл ... Накидал в дизайнере , пару виджетов на форму , попытался собрать все тот же черный экран ,
Вывод приложения след.:
E/libEGL  ( 1066): called unimplemented OpenGL ES API

Что с этим делать ??
Записан
saim
Гость
« Ответ #6 : Сентябрь 01, 2014, 23:17 »

При запуске появляется блик на экране , потом все черное ...
Такое ощущение что что-то не подгружается , или я что-то не подключаю ...
Записан
navrocky
Гипер активный житель
*****
Offline Offline

Сообщений: 817


Погроммист


Просмотр профиля
« Ответ #7 : Сентябрь 02, 2014, 09:37 »

Глючные драйвера? Для QtQuick2 нужен OpenGL >= 2.0 (десктоп) , или OpenGL ES >= 2.0 (iOs, Android)

Можешь еще почитать вывод приложения в терминал, если ошибки есть, то информация о них туда выводится.
Записан

Гугль в помощь
saim
Гость
« Ответ #8 : Сентябрь 02, 2014, 14:29 »

Еще вопрос :
Есть у меня некий файл main.qml
Код:
import QtQuick 2.2
import QtQuick.Controls 1.1

ApplicationWindow {
    id: mainWindow
    visible: true
    width: 640
    height: 480
    title: qsTr("Hello World")

    menuBar: MenuBar {
        Menu {
            title: qsTr("File")
            MenuItem {
                text: qsTr("Exit")
                onTriggered: Qt.quit();
            }
        }
    }

    Text {
        text: qsTr("Hello World")
        anchors.centerIn: parent
    }

    CheckBox {
        id: checkBox1
        x: 54
        y: 88
        text: qsTr("Check Box")
    }

    ProgressBar {
        id: progressBar1
        x: 228
        y: 306
    }
    LabelTypeYouInfo
    {
        anchors.left: mainWindow
        visible: true
    }

}

А также есть еще один файл LabelTypeYouInfo.qml (простой банальный label):
Код:
import QtQuick 2.0

Rectangle {
    id: myt
    width: 154
    height: 45
    gradient: Gradient {
        GradientStop {
            position: 0.439
            color: "#ffffff"
        }

        GradientStop {
            position: 0.966
            color: "#000000"
        }
    }

    Text {
        id: text1
        x: 5
        y: 14
        text: qsTr("Укажите свои данные")
        font.pixelSize: 14
    }
    LabelTypeYouInfo{
        id: labelStepFirst
        visible: true
    }
}

Я хочу его использовать в файле main.qml
Почему при его использовании
(см. main.qml ) у меня на девайсе просто черный экран ?

Заранее СПАСИБО!
Записан
saim
Гость
« Ответ #9 : Сентябрь 02, 2014, 14:34 »

Как бороться с этим ??
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


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