QTreeWidget系列--QTreeWidgetItem可随意移动(拖拽),更换父亲节点

来源:互联网 发布:菊花插件dbm 导入数据 编辑:程序博客网 时间:2024/05/18 02:05

方法分如下两步:

第一步,在datatree类(继承自qtreewidget)的构造函数中设置这棵树具有如下两种特征:

setDefaultDropAction(Qt::MoveAction);

setDragDropMode(QAbstractItemView::DragDrop);

第二步,重写 startdrag()函数,在里面写上如下代码:

void CDataTree::startDrag(Qt::DropActions /*supportedActions*/)
{
  QMimeData *mimeData = new QMimeData;
  mimeData->setText(“fasfas”);
  QDrag *drag = new QDrag((QWidget*)(this));
  drag->setMimeData(mimeData);
  drag->exec(Qt::MoveAction);//注意这里一定要是MoveAction
}



0 0
原创粉丝点击