前言
Qt的View/Model框架下可以使用代理Dalegate来自定义数据的展示/编辑方式。自定义代理展示数据主要需要重写的接口如下:
class QAbstractItemDelegate: public QObject
{
...
public:
virtual QSize sizeHint(const QStyleOptionViewItem &option, const QModelIndex &index) const = 0;
virtual void paint(QPainter *painter, const QStyleOptionViewItem &option, const QModelIndex &index) const = 0;
...
}
其中sizeHine
接口用于返回代理数据项目的显示尺寸,paint
接口用于绘制数据。
如果需要针对数据进行编辑,则使用的接口为: