标签: qml

在Qt中点击和按下有什么区别?

你能不能给我说说怎么分辨一些帮助ClickedPressed?谢谢..那Released意味着什么?你能给我一个样品吗?

user-interface qt qml

15
推荐指数
2
解决办法
1万
查看次数

Qt5 for Android:Project ERROR:QT中的未知模块:快速qml

我使用此链接的分步教程构建了Android版Qt5:为Android 构建Qt 5.

现在,我能够构建和部署QWidget应用程序到我的nexus 7.但是如果我尝试用给定的QtCreator 2.7.1模板构建QtQuick应用程序,我会收到以下错误:

Project ERROR: Unknown module(s) in QT: quick qml
Run Code Online (Sandbox Code Playgroud)

我完全按照教程中的描述完成了每个构建步骤.还有其他人遇到过这个错误吗?

android qml qt5 qt-necessitas

15
推荐指数
1
解决办法
4055
查看次数

Qml:如何在ListView上禁用滚动/滑动?

我通过使用带有snap的水平列表在Qml中实现了master-detail,每个列表项都是一个视图.

我现在想要禁用滚动/滑动,我该如何实现?似乎没有有用的ListView属性.

qt qml

15
推荐指数
1
解决办法
9985
查看次数

如何查找所有QML模块的最新版本

通常我的QML文件import QtQuick 2.4以及其他导入开头.我怎么知道哪个是导入模块的最新版本而不必猜测类型和构建?

qt qml qt5 qtquick2

15
推荐指数
1
解决办法
3538
查看次数

QML 连接:不推荐使用连接中隐式定义的 onFoo 属性

升级到 Qt 5.15 时,我收到以下错误消息:

QML Connections: Implicitly defined onFoo properties in Connections are deprecated.
Use this syntax instead: function onFoo(<arguments>) { ... }
Run Code Online (Sandbox Code Playgroud)

下面贴出对应的QML代码

Connections {
    target: AppProxy

    onLogsReady: function(logs) {
        textLogs.text = logs
    }
}
Run Code Online (Sandbox Code Playgroud)

其中onLogsReadyAppProxy类中定义的信号:

class AppProxy : public QObject {
  Q_OBJECT
  Q_DISABLE_COPY(AppProxy)

 public:
  AppProxy(QObject* parent = 0);
  ~AppProxy();

 signals:
  void logsReady(QString logs);

// ...
};
Run Code Online (Sandbox Code Playgroud)

我想知道如何抑制这个警告。

qt qml qt5 qt5.15

15
推荐指数
1
解决办法
8186
查看次数

如何在QtQuick 2.0上为Rectangle创建投影

如何Rectangle在QtQuick 2.0上为可视项目绘制阴影?
我喜欢为我的主窗口画一个阴影(我有一个透明且没有装饰的窗口)

qt qml qtquick2

14
推荐指数
3
解决办法
1万
查看次数

如何从C++访问嵌套的QML对象?

这是一个可重复的例子:

main.qml


import QtQuick 2.0

Item {
    id : root
    width: 360
    height: 360

    Text {
        id : t1
        text: qsTr("Hello World")
        property int someNumber: 1000
        anchors.centerIn: parent
    }
    MouseArea {
        anchors.fill: parent
        onClicked: {
            Qt.quit();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

main.cpp中


#include <QtGui/QGuiApplication>
#include <QQmlEngine>
#include <QQmlComponent>
#include <QQmlProperty>
#include <QDebug>

#include "qtquick2applicationviewer.h"

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

    QtQuick2ApplicationViewer viewer;
    viewer.setMainQmlFile(QStringLiteral("qml/untitled/main.qml"));
    viewer.showExpanded();

    QQmlEngine engine;
    QQmlComponent component(&engine, "qml/untitled/main.qml");
    QObject *object = component.create();

    qDebug() << "Property value:" << QQmlProperty::read(object, …
Run Code Online (Sandbox Code Playgroud)

c++ qt qml qtquick2 qtcore

14
推荐指数
1
解决办法
1万
查看次数

如何将计算的C++结构公开给Qml

我有以下问题.

我正在开发一个C++模型和一个Qml视图,通过控制器连接它们.在我的模型中,我执行多次计算.我还为我的应用程序的用户提供了编写自定义事件处理程序的可能性,用qml编写.现在我遇到了一个问题,我决定使用固定点表示法,并编写了相应的C++类.现在我想向开发人员提供FixedPoint类 - 包括其所有运算符 - 他们决定在Qml中扩展我的应用程序.到目前为止,我提供了所有数据作为QProperties,这是编码指南所要求的.但我愿意接受其他解决方案,以便在我的团队中讨论它们.显然,固定点不是标识,算法依赖于复制它的可能性,这在继承QObject时是不允许的.

所以问题到了:我怎样才能将c ++类/结构体暴露给QML,这不是一个身份?

代码中的一个例子:

struct FixedPoint
{
    FixedPoint(FixedPoint&);
    FixedPoint& operator=(FixedPoint&);
    ...
    int mantissa;
    int exponent;
}
Run Code Online (Sandbox Code Playgroud)

我想在Qml中使用它作为用C++编写的QQuickItem的属性(值):

MyQmlObject{
    value{ mantissa: 134; exponent: 3 }
}
Run Code Online (Sandbox Code Playgroud)

然后在javascript中的整个计算中使用属性,并将其复制多次.所以我认为我不能将值设为FixedPoint*类型的属性.我对吗?

c++ qt qobject qml qquickitem

14
推荐指数
1
解决办法
3846
查看次数

在Android上Qt QML Camera to C++ QImage

我有一个基于Qt5.4的程序和一些图像处理.我使用QCameramy videoSurface(派生自QAbstractVideoSurface)来获取VideoFrames.它在Windows上运行良好.

但现在我需要我的应用程序的Android版本.我发现QCamera在Android上不起作用.但我看到QML Camera示例在Android上运行没有任何问题.

所以我决定用QML重写我的应用程序.主要问题:我无法在C++中访问QML Camera表面.

void myVideoOutput::setSource(QObject *source)
{
    qDebug() << Q_FUNC_INFO << source;

    if (source == m_source.data())
        return;
    m_source = source;
    if (m_source) {
        const QMetaObject *metaObject = m_source.data()->metaObject();

        QStringList properties;
        for(int i = metaObject->propertyOffset(); i < metaObject >propertyCount(); ++i)
            properties << QString::fromLatin1(metaObject->property(i).name());
        qDebug() << properties;

    }
    .....
    emit sourceChanged();
}
Run Code Online (Sandbox Code Playgroud)

此代码提供对属性的访问.但我无法以这种方式访问​​videoSurface(使用QCamera我可以做到).我想知道QML Camera是如何工作的?它是基于QCamera?我看QCamera *m_cameraQDeclarativeCamera...

所以我有两个问题:

  1. 是否可以在C++中使用QML Camera进行后期处理图像?工作实例非常有价值.
  2. 你知道在Qt中从Android摄像头捕获视频的其他方法吗?

qt camera android qml

14
推荐指数
2
解决办法
7200
查看次数

我们如何只在qml中进行枚举声明,而不是javascript?

我的问题是如何在qml中定义枚举器?或者我们可以在qml中用c ++定义一个对象相同的枚举?对象枚举如下面的源代码,我想在qt中执行此操作而不是在Qt中使用javascript,我该怎么办?谢谢你的答复,

enum Color { RED, GREEN, BLUE };
Color r = RED;
switch(r)
{
    case RED  : std::cout << "red\n";   break;
    case GREEN: std::cout << "green\n"; break;
    case BLUE : std::cout << "blue\n";  break;
}
Run Code Online (Sandbox Code Playgroud)

我想知道Qml有能力定义枚举吗?谢谢你的答复

enums qt qml

14
推荐指数
4
解决办法
1万
查看次数

标签 统计

qml ×10

qt ×9

qt5 ×3

qtquick2 ×3

android ×2

c++ ×2

camera ×1

enums ×1

qobject ×1

qquickitem ×1

qt-necessitas ×1

qt5.15 ×1

qtcore ×1

user-interface ×1