如何访问 QStyledItemDelegate 中 displayText 函数中的不同列
How can I access to different column in displayText function in QStyledItemDelegate
我要更改我的 QTableView
专栏之一的显示文本。我继承自 QStyledItemDelegate
class 并根据以下内容更改 displayText
的定义:
QString CellIdDelegate::displayText(const QVariant &value, const QLocale &locale) const
{
QString currentColumn = value.toString();
QString anotherColumn = ....;
return currentColumn + anotherColumn;
}
然后使用setItemDelegateForColumn
.
如何访问 QTableView
中另一列的值。
您不能,因为 displayText() 仅适用于一个单元格。它只是为了添加例如前缀或后缀。如果要显示其他文本,相应地修改Qt::DisplayRole返回的数据。这对代表来说不算什么。
我要更改我的 QTableView
专栏之一的显示文本。我继承自 QStyledItemDelegate
class 并根据以下内容更改 displayText
的定义:
QString CellIdDelegate::displayText(const QVariant &value, const QLocale &locale) const
{
QString currentColumn = value.toString();
QString anotherColumn = ....;
return currentColumn + anotherColumn;
}
然后使用setItemDelegateForColumn
.
如何访问 QTableView
中另一列的值。
您不能,因为 displayText() 仅适用于一个单元格。它只是为了添加例如前缀或后缀。如果要显示其他文本,相应地修改Qt::DisplayRole返回的数据。这对代表来说不算什么。