当前位置: 首页 > news >正文

永年县网站/seo优化网络公司排名

永年县网站,seo优化网络公司排名,个人博客WordPress吗,深圳网站建设方案QT本是就支持鼠标左键选中拖动的功能,Drag和Drop。查看以下示例: 拖动功能包含两个窗口:一个是源窗口,一个是目标窗口。 在源窗口需要实现: void mousePressEvent(QMouseEvent *event) override;void mouseReleaseEve…

QT本是就支持鼠标左键选中拖动的功能,Drag和Drop。查看以下示例:
在这里插入图片描述
拖动功能包含两个窗口:一个是源窗口,一个是目标窗口。
在源窗口需要实现:

	void mousePressEvent(QMouseEvent *event) override;void mouseReleaseEvent(QMouseEvent *event) override;void mouseMoveEvent(QMouseEvent *event) override;

在目标窗口需要实现:

	//窗口进入拖动void dragEnterEvent(QDragEnterEvent *event) override;//拖动离开void dragLeaveEvent(QDragLeaveEvent *event) override;//拖动移动void dragMoveEvent(QDragMoveEvent *event) override;//拖动松开鼠标void dropEvent(QDropEvent *event) override;

具体实现过程:

//记录拖拽初始位置
void DragListView::mousePressEvent(QMouseEvent *event) {if (event->buttons() & Qt::LeftButton) {startPos = event->pos();_modelIndex = indexAt(event->pos());}
}void DragListView::mouseReleaseEvent(QMouseEvent *event) {if ((event->pos() - startPos).manhattanLength() > 5) {return;}QModelIndex index = indexAt(event->pos());setCurrentIndex(index);  //鼠标relesse时才选中
}void DragListView::mouseMoveEvent(QMouseEvent *event) {if (event->buttons() & Qt::LeftButton) {if ((event->pos() - startPos).manhattanLength() < QApplication::startDragDistance()) {return;}QModelIndex theDragIndex = indexAt(startPos);theDragRow = theDragIndex.row();setCurrentIndex(theDragIndex);  //拖拽即选中QStandardItemModel* slm = dynamic_cast<QStandardItemModel*>(model());QStandardItem *curItem = slm->itemFromIndex(_modelIndex);if (curItem == nullptr) {return;}_selectJBCode = curItem->data().toInt();//调用接口选中Item_iDragItemJB->dragItem(_modelIndex);//[1]把拖拽数据放在QMimeData容器中QString text = curItem->text();QIcon icon = curItem->icon();QIcon icon_hover = curItem->icon();QByteArray itemData;QDataStream dataStream(&itemData, QIODevice::WriteOnly);dataStream << _selectJBCode << text ;QMimeData *mimeData = new QMimeData;mimeData->setData(myMimeType(), itemData);//[2]设置拖拽时的缩略图Thumbnail *DragImage = new Thumbnail(this);DragImage->setupThumbnail(icon_hover, text);//DragImage->setIconSize(18);  //default:20QPixmap pixmap = DragImage->grab();QDrag *drag = new QDrag(this);drag->setMimeData(mimeData);drag->setPixmap(pixmap);drag->setHotSpot(QPoint(pixmap.width() / 2, pixmap.height() / 2));if (drag->exec(Qt::MoveAction) == Qt::MoveAction) {}}
}

目标窗口实现源码:

void Map2DCanvasEx::dragEnterEvent(QDragEnterEvent* event) {if (event->mimeData()->hasFormat("DragListView/code-text")) {if (event->source() == this) {event->setDropAction(Qt::MoveAction);event->accept();} else {event->acceptProposedAction();}} else {event->ignore();}}void Map2DCanvasEx::dropEvent(QDropEvent *event) {//判断接收的是否是指定的对象if (event->mimeData()->hasFormat("DragListView/code-text")) {//获取拖拽时设置的数据QByteArray itemData = event->mimeData()->data("DragListView/code-text");QDataStream dataStream(&itemData, QIODevice::ReadOnly);QString text;int selectJBCode = -1;dataStream >> selectJBCode >> text;JBPlotManagerInst()->addJB(event->pos());if (event->source() == this) {event->setDropAction(Qt::MoveAction);event->accept();} else {event->acceptProposedAction();}} else {event->ignore();}}

aaa

http://www.jmfq.cn/news/5180455.html

相关文章:

  • 建站宝盒成品网站演示/乐陵seo优化
  • 做公务员题目的网站/河北网站优化公司
  • 做国际物流需要自己的网站吗/优书网首页
  • 北京网站百度推广/长春刚刚最新消息今天
  • dedecms微电影网站模板/搜狗引擎
  • 淄博网站制作服务/域名关键词排名查询
  • 阳春网站建设/广州seo全网营销
  • 南京网站制作哪家好/网店推广方法有哪些
  • 百度给企业做网站吗/广州抖音推广公司
  • 网站建设找盖亚科技/在线识别图片来源
  • 做网站的收益在哪/王通seo教程
  • 武汉做网站哪里好/优化疫情防控措施
  • 杭州企业网站建设/知乎关键词排名
  • 平度网站建设ld4/推介网
  • 阿里妈妈 该网站的域名已经被其他人绑定/seo网站推广经理
  • 面试建设单位在哪个网站/网络推广工作内容
  • 万网服务器网站建设/网站友链查询源码
  • 阜阳网站建设价格/竞价排名点击器
  • 苏州市建设安全监督局网站/排名优化方案
  • 襄州区城乡建设局网站/江门seo
  • 芸志建站怎么建立网站/网络公关公司收费
  • 设计网站会员/海外营销
  • 餐饮企业网站建设方案书/sem竞价推广怎么做
  • 网站使用说明书/免费的行情网站app
  • 网站建设标书模板下载/ks免费刷粉网站推广
  • 深圳做棋牌网站建设找哪家公司好/百度推广免费
  • 企业网站推广案例/一个产品的市场营销策划方案
  • 做3d任务的网站/成都网站seo外包
  • 怎么让网站排名上去/电商产品推广方案
  • 做英文网站价格/百度竞价渠道代理商