qml 命名规范

qml命名规范可以参照python的命名规范,
变量和函数等对象的命名规范使用的是这样的方式:
共有数据成员,属性和函数等使用的是前面没有下划线的方式命名的,比如:
property int var1
function func1() {}
表示可以被外部对象调用和使用

保护数据成员,属性和函数等使用前面带一个下划线的方式,比如:
property int _var2
function _func2() {}
表示可以被有继承关系的qml源文件使用

私有数据成员,属性和函数等使用前面带有2个下划线的方式,比如:
property int __var3
function __func3() {}
表示只可以被本qml文件使用

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
QML 中展示命名的数组需要使用 Qt 的 Model-View 架构。你可以创建一个自定义 QAbstractListModel 的子类,然后在 QML 中使用该模型来展示数组。 以下是一个示例代码: C++ 代码: ``` #include <QAbstractListModel> class NamedArrayModel : public QAbstractListModel { Q_OBJECT public: explicit NamedArrayModel(QObject *parent = nullptr); // 定义模型相关的函数 int rowCount(const QModelIndex &parent = QModelIndex()) const override; QVariant data(const QModelIndex &index, int role = Qt::DisplayRole) const override; // 定义一个设置数组的函数 void setNamedArray(const QMap<QString, QVariantList> &namedArray); private: QMap<QString, QVariantList> m_namedArray; }; NamedArrayModel::NamedArrayModel(QObject *parent) : QAbstractListModel(parent) { } int NamedArrayModel::rowCount(const QModelIndex &parent) const { if (parent.isValid()) { return 0; } return m_namedArray.count(); } QVariant NamedArrayModel::data(const QModelIndex &index, int role) const { if (!index.isValid()) { return QVariant(); } // 获取命名数组中的数据 QString name = m_namedArray.keys().at(index.row()); QVariantList array = m_namedArray.value(name); if (role == Qt::DisplayRole) { // 返回数据给 QML return QStringLiteral("%1: %2").arg(name).arg(array); } return QVariant(); } void NamedArrayModel::setNamedArray(const QMap<QString, QVariantList> &namedArray) { beginResetModel(); m_namedArray = namedArray; endResetModel(); } ``` QML 代码: ``` import QtQuick 2.15 import QtQuick.Controls 2.15 ListView { model: namedArrayModel delegate: Text { text: model.display } } // 在某个地方设置 namedArrayModel 对象的数据 Component.onCompleted: { var namedArray = { "Array1": [1, 2, 3], "Array2": ["a", "b", "c"] } namedArrayModel.setNamedArray(namedArray) } ``` 在这个示例中,我们创建了一个 NamedArrayModel 类来展示命名数组的数据,然后在 QML 中使用 ListView 组件来展示这个模型。通过设置 namedArrayModel 对象的数据,我们可以在 QML 中动态地展示命名数组。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值