QStandardItem
是 Qt 中用于实现标准项目模型(如 QStandardItemModel
)的类。它提供了一个接口,允许开发者创建和操作表、树或列表视图中的数据项。以下是 QStandardItem
的一些常用成员函数:
数据访问和操作:
QVariant data(int role = Qt::DisplayRole) const
: 返回该项的数据,role
参数指定数据的角色,例如Qt::DisplayRole
用于显示文本。void setData(const QVariant &value, int role = Qt::EditRole)
: 设置该项的数据,role
指定数据的角色。Qt::ItemFlags flags() const
: 返回该项的标志,例如它是否可选、可编辑等。void setFlags(Qt::ItemFlags flags)
: 设置该项的标志。
文本相关:
QString text() const
: 返回该项的显示文本。void setText(const QString &text)
: 设置该项的显示文本。
布尔值和复选框:
bool isCheckable() const
: 检查该项是否可以勾选。void setCheckable(bool checkable)
: 设置该项是否可以勾选。bool isChecked() const
: 检查该项是否被勾选。void setChecked(bool checked)
: 设置该项的勾选状态。
图标和装饰:
QIcon icon() const
: 返回该项的图标。void setIcon(const QIcon &icon)
: 设置该项的图标。QFont font() const
: 返回该项的字体。void setFont(const QFont &font)
: 设置该项的字体。QBrush background() const
: 返回该项的背景刷。void setBackground(const QBrush &brush)
: 设置该项的背景刷。QBrush foreground() const
: 返回该项的前景刷(文本颜色)。void setForeground(const QBrush &brush)
: 设置该项的前景刷。
对齐和尺寸:
Qt::Alignment alignment() const
: 返回该项的对齐方式。void setAlignment(Qt::Alignment alignment)
: 设置该项的对齐方式。QSize sizeHint() const
: 返回该项的尺寸提示。
子项和父子关系:
int row() const
: 返回该项在其父项中的行位置。int column() const
: 返回该项在其父项中的列位置。QStandardItem *parent() const
: 返回该项的父项。int rowCount() const
: 返回该项拥有的子项数量。int columnCount() const
: 返回该项拥有的子列数量。QStandardItem *child(int row, int column = 0) const
: 返回指定位置处的子项。void setChild(int row, int column, QStandardItem *item)
: 设置子项。void appendRow(QStandardItem *item)
: 向该项添加一行新的子项。void appendColumn(QStandardItem *item)
: 向该项添加一列新的子项。
其他:
void setSizeHint(const QSize &size)
: 设置该项的尺寸提示。void setToolTip(const QString &toolTip)
: 设置该项的工具提示。void setStatusTip(const QString &statusTip)
: 设置该项的状态提示。void setWhatsThis(const QString &whatsThis)
: 设置该项的“这是什么”帮助文本。
QStandardItem
通过这些函数提供了丰富的接口,使得在创建复杂的数据模型时可以轻松地定制每个数据项的行为和外观。