初探自定义委托类
委托属于视图的子功能
视图主要负责组织具体数据项的显示方式(是列表方式,还是树形方式,还是表格方式)
委托主要负责具体数据项的显示和编辑,比如用户需要编辑某个数据时,则需要弹出编辑框...在模型视图中,会默认提供一个QStyledItemDelegate类,供用户编辑数据
也可以通过继承QItemDelegate父类,实现自定义委托功能
QAbstractItemDelegate类中的关键虚函数...(QAbstractItemDelegate * delegate )成员函数设置我们自定义的委托类对象即可
深入自定义委托类
之前我们写的自定义委托,每次都需要双击某个数据项,才能弹出编辑器
那如何让委托一直呈现在视图显示上呢...步骤如下:
重写委托类的paint成员函数
在paint()中,通过QApplication::style()->drawControl()来自定义数据显示方式,比如绘制按钮
重写委托类的editorEvent...是一个text文本的复选框
// option:选项,用来绘制控件所需的所有参数比如option.rect(设置组件大小位置), option.state(设置组件状态)
//其中option. state