实现qt拖拽显示或者播放

  • 拖拽端处理:

第一步

cpp 复制代码
setAcceptDrops(true); // 允许拖拽

鼠标点击拖拽处理:

cpp 复制代码
void WidgetAdd::mousePressEvent(QMouseEvent *event){
        QDrag *drag = new QDrag(this);
        QMimeData *mimeData = new QMimeData;

        // 将当前 Widget 的标识作为 MIME 数据传递(可以根据需要更改)
        mimeData->setText(drawText);
        drag->setMimeData(mimeData);
        // 开始拖拽
        drag->exec();
}

接收端:

cpp 复制代码
setAcceptDrops(true); // 允许丢弃
cpp 复制代码
void WidgetRecv::dragEnterEvent(QDragEnterEvent *event)
{
    if (event->mimeData()->hasText()) {
        event->acceptProposedAction(); // 接受拖拽
    }
}

void WidgetRecv::dropEvent(QDropEvent *event)
{
    if (event->mimeData()->hasText()) {
        QString text = event->mimeData()->text();
        // 处理接收到的内容
        event->acceptProposedAction(); // 确认丢弃
    }
}
相关推荐
while(1){yan}8 分钟前
MyBatis Generator
数据库·spring boot·java-ee·mybatis
それども17 分钟前
MySQL affectedRows 计算逻辑
数据库·mysql
是小章啊25 分钟前
MySQL 之SQL 执行规则及索引详解
数据库·sql·mysql
富士康质检员张全蛋44 分钟前
JDBC 连接池
数据库
yangminlei1 小时前
集成Camunda到Spring Boot项目
数据库·oracle
ChineHe2 小时前
Redis数据类型篇002_详解Strings核心命令与存储结构
数据库·redis·缓存
清水白石0082 小时前
《从零到进阶:Pydantic v1 与 v2 的核心差异与零成本校验实现原理》
数据库·python
电商API&Tina2 小时前
京东 API 数据采集接口接入与行业分析
运维·服务器·网络·数据库·django·php
Wyn_3 小时前
【ZMQ/QT】Windows11 + Qt 安装配置zmq(亲测可用)
qt·zmq·windows11
柠檬叶子C3 小时前
PostgreSQL 忘记 postgres 密码怎么办?(已解决)
数据库·postgresql