nima mansouri
جمعه 21 تیر 1392, 02:42 صبح
سلام دوستان
من یه کلاس دارم که از qtableview ارث می برد و با تابع زیر آن را پر می کنم اما مشکل این است که وقتی برای بار چندم می خواهم که اطلاعات جدول را تغییر دهم شماره سطر ها به هم می ریزد و فریز می شوند و جالب آنکه این مشکل فقط در مود ریلیز رخ می دهد
void TableView::showGroups(QString key)
{
if(dataset.keys().contains(key))
{
currentGroup_name = key;
QVector<Person*> data = dataset[key];
int count = data.count() ;
QStandardItemModel * model = new QStandardItemModel ;
model->setColumnCount(7);
model->setRowCount(count);
for (int row = 0 ; row < count ; row++ )
{
QStandardItem* item_0 = new QStandardItem(data[row]->NAME) ;
QStandardItem* item_1 = new QStandardItem(data[row]->FAMILY_NAME) ;
QStandardItem* item_2 = new QStandardItem(data[row]->FATHER_NAME) ;
QStandardItem* item_3 = new QStandardItem(data[row]->SCHOOL_NAME) ;
QStandardItem* item_4 = new QStandardItem(data[row]->IDENTIFICATION_CODE) ;
QStandardItem* item_5 = new QStandardItem(data[row]->DATEBIRTH) ;
QStandardItem* item_6 = new QStandardItem(data[row]->DP) ;
model->setItem(row,0,item_0);
model->setItem(row,1,item_1);
model->setItem(row,2,item_2);
model->setItem(row,3,item_3);
model->setItem(row,4,item_4);
model->setItem(row,5,item_5);
model->setItem(row,6,item_6);
}
setModel(model);
}
else
{
qDebug()<<key + " is not in keys";
}
}
من یه کلاس دارم که از qtableview ارث می برد و با تابع زیر آن را پر می کنم اما مشکل این است که وقتی برای بار چندم می خواهم که اطلاعات جدول را تغییر دهم شماره سطر ها به هم می ریزد و فریز می شوند و جالب آنکه این مشکل فقط در مود ریلیز رخ می دهد
void TableView::showGroups(QString key)
{
if(dataset.keys().contains(key))
{
currentGroup_name = key;
QVector<Person*> data = dataset[key];
int count = data.count() ;
QStandardItemModel * model = new QStandardItemModel ;
model->setColumnCount(7);
model->setRowCount(count);
for (int row = 0 ; row < count ; row++ )
{
QStandardItem* item_0 = new QStandardItem(data[row]->NAME) ;
QStandardItem* item_1 = new QStandardItem(data[row]->FAMILY_NAME) ;
QStandardItem* item_2 = new QStandardItem(data[row]->FATHER_NAME) ;
QStandardItem* item_3 = new QStandardItem(data[row]->SCHOOL_NAME) ;
QStandardItem* item_4 = new QStandardItem(data[row]->IDENTIFICATION_CODE) ;
QStandardItem* item_5 = new QStandardItem(data[row]->DATEBIRTH) ;
QStandardItem* item_6 = new QStandardItem(data[row]->DP) ;
model->setItem(row,0,item_0);
model->setItem(row,1,item_1);
model->setItem(row,2,item_2);
model->setItem(row,3,item_3);
model->setItem(row,4,item_4);
model->setItem(row,5,item_5);
model->setItem(row,6,item_6);
}
setModel(model);
}
else
{
qDebug()<<key + " is not in keys";
}
}