QTreeView 用户通过界面在指定位置进行动态增加删除 c++ 界面操作
时间: 2024-02-06 14:08:51 浏览: 22
要在QTreeView中动态添加和删除项目,需要使用QStandardItemModel作为数据模型。以下是一个简单的示例,演示如何在单击按钮时添加和删除项目。
首先,在窗口的构造函数中创建一个QStandardItemModel并将其设置为QTreeView的模型:
```cpp
QStandardItemModel *model = new QStandardItemModel(this);
ui->treeView->setModel(model);
```
然后,在添加按钮的单击事件处理程序中,使用QStandardItemModel的方法来添加一个新项目:
```cpp
QStandardItem *item = new QStandardItem("New Item");
model->appendRow(item);
```
在删除按钮的单击事件处理程序中,获取当前选定的项目,并使用QStandardItemModel的方法删除该项目:
```cpp
QModelIndexList indexes = ui->treeView->selectionModel()->selectedIndexes();
if (!indexes.isEmpty()) {
QModelIndex index = indexes.first();
model->removeRow(index.row());
}
```
这将在用户单击“添加”按钮时向TreeView添加一个名为“New Item”的新项,并在用户选择一个项目并单击“删除”按钮时删除该项。当然,您可以根据自己的需要进行更改。