将 qt 快速 qml 绑定到 c++

Bind qt quick qml to c++

本文关键字:c++ 绑定 qml qt 快速      更新时间:2023-10-16

我想将qt qml代码绑定到c ++函数和c ++源文件。如何直接从 qml 代码运行 c++ 函数,例如按钮 onClick 事件?如何从 qml 中的 c++ 源文件调用函数,例如 onClick 事件?请解释越来越多!我是初学者。

有几个选项。

  1. 可以从 QML 实例化的C++类,请参阅 KimKulling 在评论中指出的从 QML 访问C++函数

  2. 一个在C++中实例化并通过QQmlContext::setContextProperty()暴露给 QML 引擎的C++类,请参阅我的答案,我有多个通过 StackView 推送的 qml 文件。如何将他们连接到该技术的C++

  3. 一个C++类,C++一次实例化,并通过qmlRegisterSingleton()用作"QML 单例"

您应该阅读有关信号和插槽的官方文档。

基本上,您正在为信号分配C++函数。如果信号被捕获,它将调用函数。