qstandarditemmodel setitem
时间: 2023-09-04 21:12:08 浏览: 84
`QStandardItemModel::setItem()` 是 `QStandardItemModel` 类中的一个成员函数,用于设置模型中某个位置的项的数据。该函数的原型如下:
```cpp
void QStandardItemModel::setItem(int row, int column, QStandardItem *item)
```
其中,`row` 和 `column` 参数分别指定要设置的项的行和列。`item` 参数则是一个指向 `QStandardItem` 的指针,它包含了要设置的项的数据和属性。该函数会将指定的项插入到模型中,并替换掉原来的项(如果有)。如果模型中原来没有该位置的项,该函数会自动创建一个新的项并插入到模型中。
示例代码:
```cpp
QStandardItemModel *model = new QStandardItemModel();
QStandardItem *item = new QStandardItem("Hello");
model->setItem(0, 0, item);
item = new QStandardItem("world!");
model->setItem(0, 1, item);
```
以上代码创建了一个 `QStandardItemModel` 实例,并设置了模型中第一行第一列和第一行第二列的项数据分别为 "Hello" 和 "world!"。注意,这里每次创建新的 `QStandardItem` 实例,并将它们插入到模型中。如果你希望在多个位置共享同一个项对象,可以使用 `QStandardItemModel::setItem` 的重载函数,该函数不会拥有传入的项对象,而是直接将其插入到模型中。