问题标签 [qquickwidget]

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.

0 投票
1 回答
5760 浏览

c++ - QQuickWidget与C++交互

我正在体验新的 QQuickWidget。如何在 QQuickWidget 和 C++ 之间进行交互?

C++

QML

text: test不起作用:ReferenceError: test is not defined

如何通过 C++ 为我的 QML 文件提供一些属性?

是否也可以在 C++ 中获取 Text 对象并更新其文本?

0 投票
1 回答
1288 浏览

qml - 多个 QQuickWidgets 与一个 QQmlEngine

我有一个问题,希望你能帮助我。

我有多个 QQmlWidgets 应该显示相同组件的不同实例。组件是在运行时创建的,并使用其父小部件的特定属性。问题是,这些组件中有多个嵌套项,因此它们的加载速度非常慢。我决定在应用程序预加载阶段将它们全部加载到 QQmlEngine,并在必要时创建它们。所以我所有的 QQmlWidgets 都有相同的 QQmlEngine 和相同的根上下文。为了区分不同小部件的属性,我在单独的上下文中创建组件的每个实例(每个 QQmlWidget 一个)。创建后,我将新创建对象的父项设置为 QQmlWidget 的根项;问题是根项在动态创建的对象中被引用,他们找不到它。你能提出任何解决方案吗?我'

错误:

提前致谢。

0 投票
2 回答
1137 浏览

qt - QQuickWidget 中的 MultiPointTouchArea 行为

我试图让 MultiPointTouchArea 在 QQuickWidget 中正常工作。考虑以下示例 qml 文件 (MultiPointTouchTest.qml):

在 main.cpp 文件中,这里我使用 QQuickWidget 或 QQuickView,如下所示:

或者

MultiPointTouchArea 的打印是不同的信息,用于以下顺序操作:

  1. 把我的第一根手指放在触摸屏上
  2. 将我的第二根手指放在触摸屏上;第一次手指触摸无效,暂时不重要。
  3. 移开我的第二根手指;控制台打印 ---onCanceled---...,第一根手指触摸仍然无效,并且 touch1.pressed 为假。

使用 QQuickView 不会发生这种奇怪的行为。

Qt 的文档说取消信号,“当新的触摸事件被取消时发出这个信号,因为另一个项目偷走了触摸事件处理。”

搜索后我不知道文档的意思。

我尝试阅读源代码以了解触摸屏时会发生什么,但我喜欢 QQuickWidget::event() 将触摸事件(TouchBegin...)发送到 QQuickWindow,并且 QQuickView::event = QQuickWindow,没有重新实现.

那么,Qt 文档的真正含义是什么?

我需要 QQuickWidget 而不是 QQuickView 所以,如何将 MultiPointTouchArea 与 QQuickWidget 一起使用并获得正确的预期行为?

0 投票
2 回答
1063 浏览

qt - QQuickWidget 抓图

我正在保存一个QQuickWidget带有几个 QML 孩子的图像,但我只有一张空白图像。

C++ 方面:

QML 方面:

在 QML 中,我希望动态添加子元素并能够在图像中显示它们。我尝试QQuickWindow grabWindow了与插槽连接的方法,它可以工作,但它只捕获窗口可见区域,我需要捕获整个 QML。

我相信这不是火箭科学,只是我没有在某个地方得到它。感谢您的回复!

附录:

好的,我不认为这是渲染之前/之后的问题,因为在调用图片抓取器之前我可以看到所有 qml 子项。很抱歉不准确。

c++ 方面:

在我可以直观地看到我所有的 qml 之后:

除非我错了,否则我不认为它的渲染问题。谢谢!

0 投票
2 回答
304 浏览

qt - QQuickwidget 抓取窗口区域外的图像

这是另一个问题的续集,我在描述我的目标时并不准确。

如链接问题中所述,我希望保存一个嵌入在 a 中QQuickWidget且大于窗口大小的 QML。该QQuickWindow grabWindow()方法仅捕获窗口区域,因此我在直观显示后尝试了以下代码:

所以,这绝对不是渲染后保存图像的问题。使用的 QML 代码只是一个普通的Rectangle. 上一个问题中提出的解决方案仅抓取落在窗口内的内容。

有什么建议么?谢谢!:)

附录:

我尝试了以下但没有奏效:

由于没有窗口,这应该按逻辑解决窗口大小的问题。任何意见?

0 投票
1 回答
154 浏览

qt - 如何拖动一个qquickwidget?

我有一个QQuickWidget内部主窗口。这似乎有效,但是,拖动时它会剧烈摇晃。

这是我只拖到左下角时的调试输出,该点不应该有正 x:

qml: QPointF(6, 2)
qml: QPointF(6, 2)
qml: QPointF(-6, -1)
qml: QPointF(-6, -1)
qml: QPointF(5, 1)
qml: QPointF(5, 1)
qml: QPointF(-5, 0)
qml: QPointF(-5, 0)
qml: QPointF(4, 0)
qml: QPointF(4, 0)
qml: QPointF(-5, 1)
qml: QPointF(- 5、1)

0 投票
4 回答
6370 浏览

qt - 在 QML 中绘制简单的条形图

将 Qt/C++ 用于普通的小部件应用程序,以及QQuickWidget使用 QML,我将如何绘制如下所示的简单条形图?

在此处输入图像描述

我想这个问题可以追溯到 QML 的组成方式。

0 投票
0 回答
180 浏览

qt - 使快速小部件背景透明

我在主窗口中创建了 2QWidget和 1 。QQuickWidget使用QQuickWidget源 qml 文件。我想为两个QWidgets 和QQuickWidget.

谁能帮我制作QQuickWidget透明的背景,以便我的主窗口也可见。

0 投票
1 回答
602 浏览

qt - 如何为 Windows XP 部署 Qt/QML 应用程序

我的 QML 应用程序使用了一些粒子效果,我通过QQuickWidget调用了 QML 对象,我尝试通过windeployqt工具为 Windows 部署 QML 应用程序,但是当我在其他 PC(使用 Windows XP)上运行它时,我收到的只是空白(或黑色)小部件(在QQuickWidget位置)。
请帮帮我!谁能帮我为 Windows XP 部署 QQuickWidget?

0 投票
1 回答
251 浏览

c++ - 在现有 C++ QT 项目中实例化 QML 对象

我们有一个用 C++ 编写的现有 QT 项目,我们想将类似 mapViewer 示例项目的东西添加到我们现有的 UI 中。我们无法弄清楚如何实例化 mapViewer,并调用初始化/显示它的方法。根据在线帮助,我们想出了下面的函数,它返回一个 QQuickWidget,我们可以将它添加到 UI 元素中。我们不断收到一个错误,即创建的组件永远不会准备好,因此该功能不起作用。

使用 mapViewer 组件创建一个对象,然后忘记它,这对我们来说没有多大意义,但是我们在网上找到的示例有类似的流程。