如何在QAbstractTableModel中添加一行?

时间:2019-01-31 18:56:13

标签: view model rows qabstracttablemodel

我正在将QAbstractTableModel子类化,该类具有指向我自己的模型的指针。将指针添加到包含我要添加的项目的数据的InsertWidget的好方法吗?像这样:

class QTableModelAdapter: public QAbstractTableModel {
private:
    Model* model;
    insertWidget* insert;
public:
    bool insertRows(int, int = 1, const QModelIndex& = QModelIndex()) override {
    beginInsertRows(parent, begin, begin + count - 1);
    std::string s = insert->getType();
    if(s=="MakeUp"){
        model->add(new MakeUp(insert->getMarca(), insert->getNome(), insert->getColore(), insert->getCapacita(), insert->getConsumo()));
    } else if (s=="..."){
      ....
    } else if (s=="..."){
      ...
    }
    endInsertRows();
    return true;}
};

我想尽可能地分离模型/视图,是否有更好的解决方案?

0 个答案:

没有答案