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

方法分如下两步:

第一步,在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
}



郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。