自定义委托

自定义委托

Graph Delegate 图形委托

void paint();
QSize sizeHint();

Editor Delegat 编辑委托

QWidget* createEditor();
void setEditorData();
void setModelData();
void updateEditorGeometry();

数据小部件映射器

Mapping Setup 映射设置

QDataWidgetMapper* mapper=new QDataWidgetMapper(this);
mapper->setModel(model);

mapper->addMapping(nameEdit,0);
mapper->addMapping(addressEdit,1);
mapper->addMapping(typeComboBox,2,"currentIndex");

connect(nextButton,SIGNAL(clicked()),mapper,SLOT(toNext()));
connect(previousButton,SIGNAL(clicked()),mapper,SLOT(toPrevious()));

mapper->toFirst();

自定义模型

Read Only Model 只读模型

QModelIndex index();
QModelIndex parent();

int rowCount();
int columnCount();
QVariant data();

Editable Model 编辑模型

bool setData();
Qt::ItemFlags flags();

Insert Remove Model 插入移除模型

bool insertRows();
bool removeRows();

bool insertColumns();
bool removeColumns();

Lazy Model 懒惰模型

bool hasChildren();
bool canFetchMore();
void fetchMore();

DnD Model(Drag Drop Model) 拖放模型

Qt::ItemFlags flags();
Qt::DropActions supportedDragActions();
Qt::DropActions supportedDropActions();
QStringList mimeTypes();
QMimeData* mimeData();
bool dropMimeData();
posted @ 2021-08-21 09:21  暹罗吹雪  阅读(49)  评论(0编辑  收藏  举报