如何将QStringView与QML一起使用?
我试图了解如何/是否可以在从QML调用的信号/插槽中使用如何将QStringView与QML一起使用?,string,qt,qt5,qstring,String,Qt,Qt5,Qstring,我试图了解如何/是否可以在从QML调用的信号/插槽中使用QStringView。例如,在下面的代码中,我是否可以使用QStringView而不是QString Q_PROPERTY(QString priority READ priority WRITE setPriority NOTIFY priorityChanged) 从我从文档中阅读的内容来看,QVariant支持的任何类型都可以在Q_属性中使用,我可以理解为什么QVariant不支持QStringView,但我正在寻找将QStrin
QStringView
。例如,在下面的代码中,我是否可以使用QStringView
而不是QString
Q_PROPERTY(QString priority READ priority WRITE setPriority NOTIFY priorityChanged)
从我从文档中阅读的内容来看,
QVariant
支持的任何类型都可以在Q_属性
中使用,我可以理解为什么QVariant不支持QStringView
,但我正在寻找将QStringView
与QML一起使用的方法,而不是通过<代码> QStult<代码> >两个副本之间的副本。 < P> QML和C++数据类型之间的支持转换在中描述。
支持的数据类型可分为四类:
- 基本数据类型
派生类(例如QObject
)qabstractemodel
- 一些基本清单
- 枚举
QStringView
不属于这些类别。因此,不可能将其传输到QML
可能的解决方法:您可以尝试围绕QStringView
创建一个基于QObject
的包装器,该包装器实现所需的QML接口