フラグ仮想メソッドにベースQSortFilterProxyModel
を持つ私のプロキシモデルでは:
Qt::ItemFlags File_List_Proxy::flags(const QModelIndex& index) const
{
if(index.isValid())
{
return QAbstractItemModel::flags(index) |
Qt::ItemIsUserCheckable |
Qt::ItemIsSelectable;
}
else
{
return Qt::NoItemFlags;
}
}
関数が上記のようになっている場合(モデルバージョンと同じです...コピーして貼り付けただけです)、アイテムは正しく表示されます。しかし、このメソッドのdefをsourceModel()を使用するように変更すると:
Qt::ItemFlags File_List_Proxy::flags(const QModelIndex& index) const
{
return sourceModel()->flags(index);
}
...その後、listViewのアイテムは非アクティブになります。なんで?