qtquick2相关内容

QML ListModel.onDataChanged 参数

我想知道我可以使用什么样的数据来处理 QML ListModel 中的 dataChanged 信号.我发现它有三个参数,其中两个是 QModelIndices,一个是 QVariant(...). 所以从前两个(似乎是一样的?)我可以得到行、列(应该是 0)、模型本身和呃......东西 但是为什么我得到了两次?而第三部的内容是什么?它不为空,但我还没有找到可以用来从中检索一些有用数 ..
发布时间:2021-06-30 19:03:23 其他开发

ListView 超出父区域

我正在使用 ListView 并将其加载到 Rectangle.向上或向下滚动内容时,内容未正确隐藏并且对用户仍然可见.有人可以帮我解决这个问题吗? 解决方案 据 文档: 注意:视图不会自动启用剪辑.如果视图没有被其他项目或屏幕裁剪,则需要设置 clip: true 以便很好地裁剪视图外项目. 因此,您遇到的是一种常见行为,您应该 1) 通过其他 Item(例如标题 Recta ..
发布时间:2021-06-30 19:03:20 其他开发

Qt/Qml:地图元素的中继器与 MapItemView

我想用来自 QAbstractListModel 的地图元素(如 MapCircle,...)填充 Qml 地图.似乎有两个 Qml 工具适用于此,MapItemView [1] 和 Repeater [2].Repeater 更强大(例如它允许嵌套模型) - 那么有什么理由使用 MapItemView 而不是 Repeater?> 问候, [1] http://doc.qt.io/qt- ..
发布时间:2021-06-30 19:03:15 其他开发

QML 预创建项目以显示在 StackView 中

我想实例化项目,然后使用 StackView 显示它们,通过 MyItem0{编号:项目 0}我的项目 1{编号:项目 1}myStackView.push(item0)...myStackView.pop()myStackView.push(item1) 问题是我创建item0和item1的时候,都显示出来了,这显然不是我想要的. 我猜这与这篇文章有关. 有什么想法吗? 解 ..
发布时间:2021-06-30 19:03:12 其他开发

动态连接到动态创建对象的信号

标题可能有点混乱,但我的意图很简单: 我有一个 [Repeater/Instantiator] 可以创建任意委托的多个实例.我想对委托实例的属性(只有第一级,因此没有属性的属性)的所有更改做出反应,调用函数 function update(index, propertyName) 这似乎很容易,但我失败了.这是我的代码 TestObj.qml 中继器{onItemAdded: { ..
发布时间:2021-06-30 19:03:09 其他开发

如何在 Qt QML TableView 单元格中绘制圆圈?

我有一个简单的示例项目 here 演示了这个问题. 我在下面包含了我认为相关的来源,但其余的可以在上面的项目链接中找到,或者我可以编辑并包含更多有用的内容. 根据一些研究,似乎我需要在我的数据函数中使用 Qt::DecorationRole 并在列为 1 时返回一个图像.但是,这部分代码永远不会执行.关于角色概念如何与 Qt QML TableView 配合使用,我遗漏了一些重要且明显 ..
发布时间:2021-06-30 19:03:06 C/C++开发

在 C++ 中循环读取 QML 对象(CheckBox)属性:始终相同的值

我编写了一个简单的代码来在 C++ 循环中从我的 QML 中读取复选框的值.但是,我总是得到“未选中"的值,即使在我用鼠标切换复选框之后也是如此. QML: CheckBox {对象名称:“模拟器复选框"文字:“文字"} C++: QObject *rootObject = engine.rootObjects().first();QObject *simulatorCheckboxQ ..
发布时间:2021-06-30 19:02:57 C/C++开发

在注册的类本身中调用 qmlRegisterType()

在我的程序中,我有很多在 QML 中实例化的 QObject 子类.每次添加/删除一个新的类,都需要在main.cpp中添加/删除qmlRegisterType()的对应调用.我想知道是否可以将调用放在注册类本身的代码中.这使得可以通过删除其 cpp/头文件而不更改任何其他 C++ 代码来删除类.另外,我可以让我的 main.cpp 干净,不需要包含注册类的所有头文件. 一种方法似乎是这样的 ..
发布时间:2021-06-30 19:02:54 C/C++开发

ListView.model 不能正常工作

在下面的代码中,我有一个 ListView,我用 JSON 数据提供它.我使用 parse 函数来提取数据并将其分配给模型,即: view.model = JSON.parse(io.text) 但是,似乎 view.model 没有获取数据,因此我的应用程序无法显示任何内容. 这是我的完整代码. 导入QtQuick 2.0导入 FilesIO 1.0导入 QtQuick.Wind ..
发布时间:2021-06-30 19:02:51 其他开发

如何在 QML WebView 中禁用渲染?

我目前正在构建一个使用 QML WebView (import QtWebKit 3.0) 的应用程序.用户需要经常调整 WebView 的大小(我使用的是 QML SplitView),但是这会导致 UI 在应用程序窗口调整大小时极度滞后.有什么办法可以防止这种情况吗? 解决方案 不是改变 width 和 height 属性而是改变 scale 属性WebView. 在开始调整大小 ..
发布时间:2021-06-30 19:02:48 其他开发

C++ QQuickItem:如何在项目大小更改时触发函数

我在 C++ 中有一个 QQuickItem,它在 QML 应用程序中实例化.如果我的 QQuickItem 的 width 属性发生变化,我想在 C++ 端触发一个自定义函数. 在 QML 中,我会做 onWidthChanged: { my code}.我怎样才能在 C++ 方面做到这一点? 解决方案 如果您想响应自定义 QQuickItem 中的大小更改,请重新实现 geome ..
发布时间:2021-06-30 19:02:45 其他开发

无需加载器即可实例化内联组件

有没有一种不使用 Loader 来实例化内联 Component(即在同一个文件中定义)的方法?我不太关心使用 Loader 的性能影响,因为我担心使用大量 Loader 包装器污染我的文件. 解决方案 您可以使用 Repeater 来创建没有 Loader 的组件.或者你甚至可以使用 Qt.createComponent 来做到这一点. 查看 Qt 文档关于QML 中的动态组件创建 ..
发布时间:2021-06-30 19:02:39 其他开发

自定义形状后剪辑自定义 qml 项的子项

我创建了一个自定义的 QQuickItem,我想创建一个圆角窗口.所以我实现了一个 QQuickPaintedItem 并导出到 QML.问题是项目的子项正在扩展项目的边界矩形,这是一个矩形而不是我想要的圆角矩形.这是它的外观: 这是我的代码: ma​​in.qml 导入 QtQuick 2.7导入 QtQuick.Window 2.2导入 mycustomlib 1.0窗户 {编号 ..
发布时间:2021-06-30 19:02:36 C/C++开发

更改可见项的顺序

是否可以向上/向下移动视觉项目以更改其重叠?目前,孩子隐藏了它的父母,但我想反过来,即父母隐藏孩子.也许存在某些属性? 解决方案 是的,这是可能的.您将需要更改相关项目的 z 属性.根据文档: 设置同级项的堆叠顺序.默认堆叠顺序为0. 具有较高堆叠值的项目绘制在具有较低堆叠顺序的同级项之上.具有相同堆叠值的项目按照它们出现的顺序自下而上绘制.具有负堆叠值的项目将绘制在其父项的内 ..
发布时间:2021-06-30 19:02:33 其他开发

在 QML 中添加菜单时出错

我有以下代码: 导入QtQuick 2.4导入 QtQuick.Window 2.2导入 QtQuick.Dialogs 1.2导入 QtQuick.Controls 1.4应用程序窗口{标题:qsTr("Hello World!")宽度:640高度:480可见:真实菜单栏:菜单栏{id:菜单栏}鼠标区域{anchors.fill:父级onClicked: { menuBar.menus.add ..
发布时间:2021-06-30 19:02:30 其他开发

qml 桌面组件缩放

我想创建一个可以缩放并包含一些桌面组件的用户界面 qtquick2.正如这篇博客文章 qml/qtquick2 的默认渲染应该使用距离字段而不是原生文本渲染.我尝试缩放 qt 快速控件.结果相当令人失望.我正在 ubuntu 64 和 qt-5.1.1 上进行测试.控件上的文本看起来很糟糕,但标准 qml 元素 (Text/TextEdit) 中的所有文本在缩放时看起来都不错. 这让我认为原 ..
发布时间:2021-06-30 19:02:27 C/C++开发

GridLayout 排列

以下是我的ma​​in.qml: 窗口{编号:窗口可见:真实宽度:800高度:480标题:qsTr(“Hello World")列表模型{id:_listModel列表元素{文本数据:“E1"已启用:假}列表元素{文本数据:“E2"已启用:假}列表元素{文本数据:“E3"已启用:假}列表元素{文本数据:“E4"已启用:假}列表元素{文本数据:“E5"已启用:假}列表元素{文本数据:“E6"已启用 ..
发布时间:2021-06-30 19:02:24 其他开发