0

我正在编写一个处理调度员工的 Qt 应用程序。主 QTableView 的头部数据是一个指向 QStringList 的指针。headerData() 函数可以正常工作,但是当我在其他地方的列表中添加一个字符串时,它会将包括新字符串在内的整个列表附加到列表的末尾。

例如,如果我有列表 1,2,3 并且我将 4 附加到它,然后根据指针遍历列表会得到结果 1,2,3,1,2,3,4。我不知道比使用指针让多个类访问相同数据更好的方法。有谁知道如何修复重复列表?

示例代码

//function to save a new employee in memory
bool EmployeeViewDialog::saveEmployee(Employee *e)
    {

employees->insert(e->name,e);
*employeeNames << e->name;
for (int i = 0; i < employeeNames->length(); i++) {
        qDebug() << employeeNames->at(i);
    }

    QList<QStandardItem*> items;
    items << new QStandardItem(e->name);
    items << new QStandardItem(e->id);
    items << new QStandardItem(e->phone);
    items << new QStandardItem(e->email);
    model->appendRow(items);
    return true;
}

追加刚刚更改为 << 方法。它是employeeNames << e->name;线。for 循环遍历列表并执行与外部类中发生的相同的事情。

4

0 回答 0