在Qt中使用dataChanged()和QTreeView时,"右下"是什么意思?

What does 'bottomRight' mean when using dataChanged() with a QTreeView in Qt?

本文关键字:右下 是什么 意思 QTreeView Qt dataChanged      更新时间:2023-10-16

dataChanged(const QModelIndex & topLeft, const QModelIndex & bottomRight)信号与QTableView一起使用时,可以直接理解topLeft和bottomRight QModelIndex,但将dataChanged()QTreeView一起使用时我将与bottomRight混淆。

bottomRight到底是什么意思?

我可以只通过emit datachanged()信号更新一次整个树视图吗?

来自模型的dataChanged()信号会更新视图。代码emit dataChanged(QModelIndex(), QModelIndex())将更新整个树状视图。树视图的update()调用不起作用。

代码:

// update the whole tree views.
emit dataChanged(QModelIndex(), QModelIndex());

dataChanged()信号对于表视图和树视图具有相同的含义。但是,如果树视图中更改的项具有不同的父项,则行为是未定义的。

WRT你关于更新整个树视图的问题,答案是否定的,你不能通过发出这个信号来更新它。模型更新后发出的dataChanged()信号