日志
拖放
2012-07-16 20:14
从甲拖动到乙,在甲的mousePressEvent函数中, QDrag *drag = new QDrag((QWidget*)this); //一个拖放类 QCursor cursor(Qt::OpenHandCursor); //鼠标显示用的 QMimeData *mimeData = new QMimeData; //基础数据类 // 设置了拖动参数 QByteArray thename = m_currClickedItem->text(m_currClickedItemcol).toAscii(); mimeData->setData("name", thename); mimeData->setText(m_currClickedItem->text(m_currClickedItemcol)); // 数据传递 drag->setMimeData(mimeData); // 放大图标 QIcon icon(QPixmap(":/icons/template.png" )); QPixmap cursorpic(icon.pixmap(64,64)); drag->setPixmap(cursorpic);//拖动图片 drag->setDragCursor(cursorpic, Qt::MoveAction); Qt::DropAction dropAction = drag->exec(); event->accept(); 乙: void 乙::dragEnterEvent ( QGraphicsSceneDragDropEvent * event ) { if (QString(event->mimeData()->data("name")) != "" ) { event->acceptProposedAction(); } } |
下一篇: 复制目录下所有至其他位置
上一篇: QGraphicsPolygonItem


