簡體   English   中英

對於無效的 QModelIndex,重載的 QAbstractItemModel::flags 應該返回什么?

[英]What should overloaded QAbstractItemModel::flags return for non valid QModelIndex?

我正在閱讀模型/視圖架構的 QT 文檔https://doc.qt.io/qt-5/model-view-programming.html#making-the-model-editable並查看重載 QAbstractItemModel 的示例: :flags 方法為無效索引返回Qt::ItemIsEnabled

Qt::ItemFlags StringListModel::flags(const QModelIndex &index) const
{
    if (!index.isValid())
        return Qt::ItemIsEnabled;

    return QAbstractItemModel::flags(index) | Qt::ItemIsEditable;
}

所以,如果索引無效,即可以有負行,我們仍然認為用戶可以與之交互。 這種邏輯有什么意義嗎? 對我來說,在這種情況下返回Qt::NoItemFlags可能更合乎邏輯

你需要的是Qt::NoItemFlagshttps Qt::NoItemFlags

它是標志枚舉的默認值(因為它是枚舉中的第一項)。 你也可以把它寫成return {}; ,它會給你相同的Qt::NoItemFlags

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM