Qt::UserRole
アイテムに挿入しようとするQTreeView
と常に false が返される理由がわかりませんが、入力すると返されないQt::EditRole
のは次のコードです。
void TreeVieweX::insertRow(QString& slink)
{
QModelIndex index = this->selectionModel()->currentIndex();
QAbstractItemModel *model = this->model();
int iRowCount = this->model()->rowCount();
if (!model->insertRow(iRowCount, index.parent()))
return;
QModelIndex child = model->index(iRowCount,0, index.parent());
bool bEditRole = model->setData(child, QVariant(slink), Qt::EditRole); // working great can fetch the data later
QHash<QString, QVariant> indexSelectedMap;
indexSelectedMap.insert("site_name",QVariant(slink));
QMap<int, QVariant> roles;
roles.insert(Qt::UserRole,indexSelectedMap);
bool bUserRole = model->setItemData( index.parent(),roles); //returns false , cant fetch data later
}