感谢回复,代码上我的数据更新很简单,就是切换下数据。
void QFreqListModel::tableSwitch(const QString in_strTableName)
{
//QMap<QString,QVector<QVector<QVariant>>> m_mTableData 全部数据结构
//QVector<QVector<QVariant> *m_pCurTable 当前界面显示数据
//切换到指定表名的表
if(in_strTableName == m_strCurTableName)
return;
if(m_mTableData.contains(in_strTableName))
{
//QVector<QVector<QVariant>> & m_vOldData = m_mTableData[m_strCurTableName];
beginResetModel();
m_strCurTableName = in_strTableName;
m_pCurTable = &m_mTableData[m_strCurTableName];
endResetModel();
}
}
问题出现在,m_pCurTable数据增加,就是row变多后,每次endresetmodel这里都会很卡,数据太多,主界面直接无响应...