Qt 之QStandItemModel解决插入耗时问题

耗尽温柔 提交于 2019-12-11 05:08:48
#include <QThread>
class TableModel : public QStandardItemModel, public QThread
{
public:
    TableModel(QObject* parent) : QStandardItemModel(parent){}
    virtual ~TableModel() {}

public:
    virtual void Update()
    {
        this->start();
    }

private:
    void SetTableModelData()
    {
        //操作数据

        QAbstractItemModel::layoutChanged();
    }

protected:
    virtual void run()
    {
        m_TableModelLock.Lock();
        SetTableModelData();
        m_TableModelLock.Unlock();
    }

private:
    CLock m_TableModelLock;
};

QStandardItemModel继承了线程,所有的更新,删除,添加都通过Update来操作,测试暂时未发现崩溃

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!