问题标签 [qtdeclarative]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
deployment - QML 应用部署、资源系统或相关寻址
我将部署一个基于 QML 的应用程序。现在我想知道最好将资源系统用于 .qml 文件及其关联文件或使用相对寻址或有更好的方法?
如果 qml 文件和图像的数量越来越大,第一种方法可能会使项目难以管理。此外,我认为部署第三方插件(如 Qt 桌面组件)会更加困难。
第二种方式并不安全。每个人都可以打开一个文本编辑器并编辑您的 .qml 文件。
有没有更好的办法?
python - PySide:将数据从 QML 传递到 Python
我正在尝试将数据从 QML 发送到 Python,但出现错误。
测试.py:
测试.qml:
单击按钮时,我希望它打印“测试”,但我收到此错误:
TypeError: printText() 正好需要 2 个参数(给定 1 个)
我错过了什么?
编辑:将示例更改为更简单的示例。
qt - QML 是否需要 libQtDeclarative?
我不确定 QML 是否需要 libQtDeclarative.a。是吗?如果不是,它究竟是为了什么?
opengl - Qt Quick 跨平台应用程序中的 OpenGL
我正在尝试开发一个跨平台(或至少桌面+嵌入式硬件)应用程序。我想使用 Qt Quick 创建一个触摸友好的 GUI。我已经实现了一个带有显示数据的 QGLWidget 的经典应用程序。重要的是只有窗口的一部分在 OpenGL 中。因此,EGLFS 和 LinuxFB 存在问题。只有 X11(或者可能是 Wayland)可以正确显示应用程序(其他会生成一些关于缺少 setParent 函数的错误,并且整个屏幕都是黑色的)。现在我正试图在 QML 中实现同样的目标。我想将此 OpenGL 渲染器用作我的 QML 应用程序的一部分,以及它周围的一些 Qt Quick 小部件。我发现有几个人问同样的事情,答案总是继承 QDeclarativeItem 并打电话给画家 s beginNativePainting() (其他人说通过 QDeclarativeItem 导出它,但我不知道如何做到这一点)。问题是在桌面上,Qt 5.11 原生画家不是 OpenGL。而且在QT5中没有办法强制使用OpenGL图形系统。因此,当我尝试获取 OpenGL 上下文 (QGLContext::currentContext()) 时,我总是得到 NULL。另一个问题:如果我用 qmlRegisterType("Test", 1, 0, "Test"); 导出我的小部件 它仅在我使用 QDeclarativeView 时才可见,但随后看不到 Qt Quick。如果我使用 QQuickView,它会说未安装模块“测试”。我怎样才能正确实施呢?因此,当我尝试获取 OpenGL 上下文 (QGLContext::currentContext()) 时,我总是得到 NULL。另一个问题:如果我用 qmlRegisterType("Test", 1, 0, "Test"); 导出我的小部件 它仅在我使用 QDeclarativeView 时才可见,但随后看不到 Qt Quick。如果我使用 QQuickView,它会说未安装模块“测试”。我怎样才能正确实施呢?因此,当我尝试获取 OpenGL 上下文 (QGLContext::currentContext()) 时,我总是得到 NULL。另一个问题:如果我用 qmlRegisterType("Test", 1, 0, "Test"); 导出我的小部件 它仅在我使用 QDeclarativeView 时才可见,但随后看不到 Qt Quick。如果我使用 QQuickView,它会说未安装模块“测试”。我怎样才能正确实施呢?
c++ - 未找到 QML“QtQuick.PrivateWidgets”插件“widgetsplugin”
我使用共享的 Qt 库开发了我的 Qt 应用程序。
转换到静态 Qt 库后CONFIG += static
,我的应用程序崩溃,我在日志中看到
QQmlApplicationEngine 加载组件失败
qrc:/main.qml:907 类型 MessageDialog 不可用
qrc:/QtQuick/Dialogs/WidgetMessageDialog.qml:42 模块“QtQuick.PrivateWidgets”插件“widgetsplugin”未找到
qml 的问题部分如下所示:
我的问题是:
- 什么是
QtQuick.PrivateWidgets
插件? - 如何解决这个问题?
c++ - Qt | 这是否可以同时使用声明性和快速模块
我有Qt5
一个针对 Qt 库成功编译的项目,但是在针对 Qt 库进行编译时shared
出现了很多错误(大约 130 个错误):* error: multiple definition of 'XXX'
static
几乎所有成对检测到的多个定义:
- libQt5Declarative, libQt5Quick
- libQt5Declarative, libQt5Qml
我libQt5Declarative
只需要MessageDialog
在我的 qml中使用
我的.pro
文件:
我的问题是:
- 为什么它成功地针对共享 Qt 进行编译,但是当我针对静态 Qt 进行编译时却失败了?
- 这可以同时使用声明性模块和快速模块吗?
- 我自己编译了静态 Qt 库,也许我做错了,Qt 有官方静态库包吗?
delegates - 2 个相同的 ListViews,在委托内部有细微差别
我有两个几乎相同的 qml 文件。我在这里列出其中一个,另一个与注释行显示的差异:
这 2 个组件旨在成为外观相似的列表视图,但代表外观略有不同。如何将这两个文件合并为一个以便能够像这样使用它们?
c++ - Qml 中的动画
我试图在我的代码中缓慢改变颜色,但我的程序等待 1.5 秒,然后立即改变颜色。我的开发环境是 Windows 8。我该如何解决这个问题?这是我的代码:
qt - 带有静态构建的 Qml
我看过很多关于这个问题的话题,但没有一个能真正解决我的问题。当我创建一个新的 Qt Quick 应用程序时QtQuick 2.4
出现错误:
项目错误:QT 中的未知模块:快速 qml
如果我导入QtQuick 1.1
我有:
项目错误:QT 中的未知模块:声明性
有没有办法使用 Qt 5.4 创建带有静态库的 Qt Quick 应用程序?
qt - 无法启动 Qt Quick Controls 应用程序
我下载了 Qt 5.4 并使用 Qt Quick Controls 1.3 创建了 Qt Quick 应用程序。
我没有更改代码中的任何内容,只是构建了它(作为发行版)。然后我将 .exe 复制到另一个文件夹,添加了.dll
我需要的所有文件,当我启动程序时没有窗口,只有在任务管理器中运行的程序进程。
但是,我可以启动使用 QtQuick 1.1 的程序。
我该如何解决?
谢谢。
这是更多解释的图像: