问题标签 [qt-quick]

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 投票
2 回答
23504 浏览

qt - 如何在 QML 中访问中继器子级的属性?

你能告诉我下面的代码有没有办法改变 imgx 元素的属性。我必须使用 javascript 更改 imgx.x 值。或者还有其他方法吗?我搜索 qt 文档但没有帮助。谢谢。

0 投票
2 回答
1853 浏览

qt - QML 新手需要帮助从 C++ 中访问项目属性

我正在用 QT 和 QML 开发一个应用程序来访问一些 XML 数据并显示结果。

XML 是从 C++ 下载/解析的,并且工作正常。我有一个用于显示自定义布局的 QML 应用程序,它也可以正常工作。

为了使应用程序看起来更精致,我在 C++ 端完成初始下载/解析时显示了一个初始“启动屏幕”,我在主 QML 视图中创建了一个属性来表示当前应用程序“状态”,以便我可以交换数据准备好后到正确的屏幕。

主.qml

C++ 代码由 QT creator 应用程序向导生成,并基于基本QmlApplicationViewer类。

我已经阅读(并重新阅读)了在线 QT 文档,据推测我要访问的各个属性所要做的mainScreen就是调用findChild<QObject *>应用程序查看器的方法rootContext()以返回QObject指向mainScreen实例的指针,然后setProperty像这样调用该方法.

其中在ROOT_CONTEXT别处定义为

void QmlApplicationViewer::createMyApplication(void)在设置主 QML 文件后调用,即

但...

我遇到的问题是返回的值findChild<QObject *>("mainScreen");始终为 NULL。我尝试使用以下代码枚举我的 QML 文件中的对象层次结构

我得到了一个大约 120 个项目的列表,但它们的名称都有一个空白字符串 ("")。

回顾 QT 文档,所有示例似乎都建议手动创建各个部分(即创建 和 的实例QDeclarativeEngineQDeclarativeComponent并将QDeclarativeItem它们链接在一起,而不是使用QApplicationViewer此博客条目http://xizhizhu.blogspot 中显示的类。 co.uk/2010/10/hybrid-application-using-qml-and-qt-c.html,但我更愿意坚持使用我已经编写的代码。

任何人都可以请帮助并建议我哪里出错或指出我可以找到一个“简单”示例的方向,该示例能够从 C++ 更改 QML 文件中项目的属性。

提前很多(很多)感谢。

乔恩...

0 投票
2 回答
751 浏览

qt - 来自嵌套列表视图的列表视图的qt快速调用索引

我在 qml 中有一个带有嵌套列表视图的列表视图,如何在嵌套列表视图委托中获取父列表视图索引的索引?

代码示例:

0 投票
0 回答
817 浏览

c++ - QML 文本元素数据类型/渲染问题,字母消失

使用 Qt 5 beta2 - 我正在尝试使用QVector <QVariant>从数据库查询中加载的 QML 文本元素文本属性。

这个作品——

-- 一会儿,然后某些字母不再可见。所以它正在获取传入的数据,然后停止渲染。如果我这样做——

-- 它工作正常,我可以根据需要继续加载尽可能多的字符。我尝试通过使用从 QVector 转换为 const char*

——但它不会工作。同样的事情,停止以看似随机的方式显示某些字母。

如何将 QVector 中的值转换为 QML 文本渲染器接受的类型,就像它接受“字符串”一样?它是一个错误吗?我找不到像这样的问题的任何参考,我一直在寻找几天。任何帮助将不胜感激。

0 投票
1 回答
2117 浏览

qt - QML - 如何将动画应用于页面中的所有元素?

受 Windows 8“现代 UI”应用程序的启发,我想在页面加载时将动画应用于页面中的所有 QML 元素。这样,页面上的每个单独元素都会在出现时进行动画处理。

我似乎在 QML 文档中找不到任何有用的东西。在 XAML 中,我可以通过以下方式完成此操作:

有 QML 等价物吗?

我已经想出了如何为单个元素执行此操作,但我想要一种简单的方法来将动画应用于某些父级的每个元素,就像上面的 XAML 示例中一样。这是我的单元素实现:

0 投票
1 回答
1364 浏览

qt - QML:如果委托条件?

我正在设计一个微调器列表控件,它一次显示 3 个项目。

它作为所需的行为工作正常,唯一面临的问题是我需要中心元素的外观更大一些。

我现在能想到的方法是在委托中有一个 if 条件,它在当前索引的基础上增加了字体大小。

上述方法可行吗?实现特定行为的任何建议

下面是代码片段

0 投票
1 回答
3637 浏览

qt - QML 中的路径视图问题

我正在设计 Spinner 控件(或您可以 Scollable 的项目列表)。就功能而言,它工作正常

主要问题是我想在滚动项目时创造一种圆周运动的感觉。因此,为了在滚动列表中产生这种效果,我们决定让前后项的大小比当前项小

我真的很难得到不同尺寸的物品。任何人都可以建议我如何进行相同的操作。

下面是我的代码片段

main.qml 片段

0 投票
2 回答
3883 浏览

static - 在静态链接应用程序中找不到模块“QtQuick”插件“qtquick2plugin”

我构建了 Qt 库的静态版本并基于 QtQuick2ApplicationViewer 编译了测试应用程序。启动时会产生错误:

我如何将插件“qtquick2plugin”添加到我的应用程序中?

0 投票
2 回答
2442 浏览

qt - QML:如何在 Pathview 中获取当前项目

我想知道如何在 Pathview 中获取当前项目。

我们确实有 iscurrentItem 属性,但如果可能的话,我们如何使用它。通过我目前的实现,我得到了当前索引,但没有得到该索引处项目的值

0 投票
2 回答
6930 浏览

qt - 在 qt5 的 qtquick 2.0 中渲染自定义 opengl

我正在寻找一种方法来在 qtquick 2.0 项目中呈现我的自定义 opengl 调用。给你一些背景信息:我有一个使用 opengl 进行渲染的 C++ 3d 引擎。目标是让它在 qtquick 2.0 UI 中呈现。

我发现在 qt 5.0 (qtquick 2.0) 之前,您可以使用 QtGlWidget 并将其嵌入到 QDeclarativeView 中。我发现的另一种方法是使用 QtDeclarativeItem 并覆盖 void QDeclarativeItem::paint(QPainter *p, const QStyleOptionGraphicsItem *o, QWidget *w) 方法。

据我了解,这是不可能的,因为 QtQuick 2.0 使用了基于 OpenGL 的新渲染器。因此,它似乎不像覆盖绘画方法那么容易。

有人知道我将如何实现一个允许渲染我的 opengl 调用的 QQuickItem 吗?