QML 中的元素和事件检查(QT 声明式)

发布于 2024-09-09 00:20:51 字数 275 浏览 6 评论 0原文

我正在 Qt Quick(Qt Declarative 和 QML)中进行一些测试,我想检查组成声明式界面的元素。

例如,如果我有一个由一个矩形和两个图像组成的声明式 GUI,我希望有一个包含三个(或更多)元素以及这些小部件(或 Qt 声明式中的项目)的列表。

在 Qt4 中,就像调用 QApplication::allWidgets() 方法一样简单,但我不知道如何在 QML 中执行此操作。

事件过滤器也会发生同样的情况,因此我无法将事件发送到这些项目。

干杯!!!

I am doing some tests in Qt Quick (Qt Declarative and QML), and i would like to inspect the elements composing the declarative interface.

For example, if i have a declarative GUI composed of a rectangle and two images, i would like to have a list with three (or more) elements with these widgets (or items in Qt Declarative).

In Qt4 it is as easy as call the QApplication::allWidgets() method, bout i don't know how to do it in QML.

The same happens with event filters, so i can not get the events sent to these items.

Cheers!!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

烟若柳尘 2024-09-16 00:20:51

你可以这样得到根对象:

QGraphicsObject * QDeclarativeView::rootObject () const

它给你一个QGraphicsObject,然后你可以使用:

QList<QGraphicsItem *> QGraphicsObject::childItems () const

childItems()实际上是在QGraphicsItem中定义的,QGraphicsObject是QGraphicsItem的子类

You can get the root object this way:

QGraphicsObject * QDeclarativeView::rootObject () const

which gives you a QGraphicsObject, and then you can use:

QList<QGraphicsItem *> QGraphicsObject::childItems () const

childItems() is actually defined in QGraphicsItem, QGraphicsObject is child class of QGraphicsItem

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文