Форум программистов
 
Расширенный поиск
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C++ > Qt и кроссплатформенное программирование С/С++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Excel VBA, CAD, Софт, ОС, Windows, Ubuntu, Android, VPS
Win Api, Assembler, C++, Java, Pascal, Lazarus, Delphi, OpenGL, DirectX
C#, Qt, .NET, ASP.NET, Windows Forms, ADO.NET, Framework, WPF, UWP, WinRT, XAML
HTML, CSS, JavaScript, Ajax, PHP, Perl, Python, Ruby, SQL, WordPress, API, XML, JSON, ActionScript, Flash

Ответ
 
Опции темы
Старый 11.12.2016, 11:23   #1
vovamakr
Пользователь
 
Регистрация: 21.09.2015
Сообщений: 41
Репутация: 10
По умолчанию QT/ QML My Widget error

Всем привет. Начал разбираться с QML ошибку словил и не пойму в чем дело. Подскажите в чем проблема:
error: C1083: Cannot open include file: 'QQuickWidget': No such file or directory

Мой код:
Код:

#pragma once
*
#include <QWidget>
*
class MyWidget : public QWidget {
* * Q_OBJECT
public:
* * MyWidget(QWidget* pwgt = 0);
};

Код:

#include <QtWidgets>
#include <QQuickWidget>
#include "MyWidget.h"
*
MyWidget::MyWidget(QWidget* pwgt/*=0*/) : QWidget(pwgt)
{
* * QQuickWidget* pv = new QQuickWidget(QUrl("qrc:///main.qml"));
*
* * QVBoxLayout* pvbx = new QVBoxLayout;
* * pvbx->addWidget(pv);
* * setLayout(pvbx);
}

Код:

import QtQuick 2.0
import QtQuick.Controls 1.2
*
Rectangle
{
* * width: 360
* * height: 360
* * Text
* * {
* * * * width: 125
* * * * height: 73
* * * * anchors.centerIn: parent
* * * * text: qsTr("My Program")
* * * * font.family: "Times New Roman"
* * * * font.pointSize: 26
* * * * anchors.verticalCenterOffset: -74
* * * * anchors.horizontalCenterOffset: -14
* * }
*
* * Button
* * * * {
* * * * * * text: "Start"
* * * * * * x: 137
* * * * * * y: 205
* * * * * * width: 78
* * * * * * height: 23
* * * * * * onClicked: Qt.quit();
* * * * }
* * MouseArea
* * {
* * * * anchors.rightMargin: 0
* * * * anchors.bottomMargin: 0
* * * * anchors.leftMargin: 0
* * * * anchors.topMargin: 0
* * * * anchors.fill: parent
* * * * onClicked:
* * * * {
* * * * * * Qt.quit();
* * * * }
* * }
*}

я думаю тут проблема:
Код:

TEMPLATE = app
*
QT += quick qml widgets quickwidgets // сюда кажется все прописал
*
RESOURCES += qml.qrc
SOURCES += main.cpp \
* * * * * *MyWidget.cpp \
* * mywidget.cpp
HEADERS += MyWidget.h \
* * mywidget.h
*
windows:TARGET = ../QMLCPPUsage
*
DISTFILES += \
* * StartGame.qml

vovamakr вне форума   Ответить с цитированием
Старый 11.12.2016, 12:06   #2
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 12,358
Репутация: 2542

icq: 512-7шесть5
skype: alexp.frl
По умолчанию

Должно работать, попробуйте пересобрать проект или "Run qmake".

Что за странные *?
Alex11223 на форуме   Ответить с цитированием
Старый 11.12.2016, 12:21   #3
vovamakr
Пользователь
 
Регистрация: 21.09.2015
Сообщений: 41
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Должно работать, попробуйте пересобрать проект или "Run qmake".

Что за странные *?
Ок.
А то глюк какойто с *
Код:

TEMPLATE = app

QT += quick qml widgets quickwidgets

RESOURCES += qml.qrc
SOURCES += main.cpp \
           MyWidget.cpp \
    mywidget.cpp
HEADERS += MyWidget.h \
    mywidget.h

windows:TARGET = ../QMLCPPUsage

DISTFILES += \
    StartGame.qml

Пересобрал, теперь пишет: QML debugging is enabled. Only use this in a safe environment.
qrc:///main.qml: File not found
я правильно передаю:
Код:

QQuickWidget* pv = new QQuickWidget(QUrl("qrc:///main.qml"))

?;
main.qml у меня в папке с программой в корне лежит

Последний раз редактировалось vovamakr; 11.12.2016 в 12:31.
vovamakr вне форума   Ответить с цитированием
Старый 11.12.2016, 12:39   #4
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 12,358
Репутация: 2542

icq: 512-7шесть5
skype: alexp.frl
По умолчанию

Так его ж нет в проекте, только StartGame.qml
Alex11223 на форуме   Ответить с цитированием
Старый 11.12.2016, 12:47   #5
vovamakr
Пользователь
 
Регистрация: 21.09.2015
Сообщений: 41
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Так его ж нет в проекте, только StartGame.qml
да, исправил название
Код:

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

но проблема таже, пишет что нету файла и пустой виджет запускается
vovamakr вне форума   Ответить с цитированием
Старый 11.12.2016, 14:23   #6
vovamakr
Пользователь
 
Регистрация: 21.09.2015
Сообщений: 41
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
Так его ж нет в проекте, только StartGame.qml
я еще раз документацию и книгу пересмотрел. все так как и у меня. скопировал код с книжки, та же проблема. я не знаю в чем проблема((( Посмотрите еще раз плиз. или как то по другому можно переписать эту строчку:
Код:

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

не работает хоть убей
vovamakr вне форума   Ответить с цитированием
Старый 11.12.2016, 14:37   #7
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 12,358
Репутация: 2542

icq: 512-7шесть5
skype: alexp.frl
По умолчанию

qrc создать http://doc.qt.io/qt-5/qtquick-deploy...esource-system
Alex11223 на форуме   Ответить с цитированием
Старый 11.12.2016, 14:44   #8
vovamakr
Пользователь
 
Регистрация: 21.09.2015
Сообщений: 41
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
ок. спасибо. попробую.
А как его создать? я не нашою в креаторе такого.

Последний раз редактировалось vovamakr; 11.12.2016 в 14:51.
vovamakr вне форума   Ответить с цитированием
Старый 11.12.2016, 14:54   #9
vovamakr
Пользователь
 
Регистрация: 21.09.2015
Сообщений: 41
Репутация: 10
По умолчанию

Цитата:
Сообщение от Alex11223 Посмотреть сообщение
почитал об qrc это XML а мне нужно QML.
vovamakr вне форума   Ответить с цитированием
Старый 11.12.2016, 15:04   #10
Alex11223
Модератор
Заслуженный модератор
 
Регистрация: 12.01.2011
Сообщений: 12,358
Репутация: 2542

icq: 512-7шесть5
skype: alexp.frl
По умолчанию

qrc это ресурсы, любые файлы.

Цитата:
Сообщение от vovamakr Посмотреть сообщение
А как его создать?
А ссылка выше для кого?
Alex11223 на форуме   Ответить с цитированием
Ответ



Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
C++, QT и QML. Динамическое формирование QML. mibin Qt и кроссплатформенное программирование С/С++ 1 27.08.2015 06:56
Widget + Notification + Приложение взаимодействие SevenXP Java Мобильная разработка (Android) 0 25.11.2013 18:24
Android, widget has stopped. Кольша Мобильные ОС (Android, iOS, Windows Phone) 4 19.05.2013 18:47
QT. Custom widget. ROD Qt и кроссплатформенное программирование С/С++ 3 30.01.2013 08:47
Поместить widget на передний план Lindemann66 Qt и кроссплатформенное программирование С/С++ 0 03.11.2011 17:42




18:13.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.

Покупайте на сайте www.skinon.ru уникальные чехлы и наклейки для телефонов.
купить трафик


как улучшить посещаемость, а также решения по монетизации сайтов, видео и приложений

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru