(二十九)QMimeData类与拖放事件

QMimeData类是用于存储MIME信息的数据容器,常用于剪贴板和拖放操作。拖放事件在Qt中是通过dragEnterEvent()和dropEvent()处理的,需要设置acceptDrops属性并判断MIME类型。博客提到了三种存储客户数据的方式,并推荐了豆子空间的三篇博客以深入理解Qt的拖放技术。
摘要由CSDN通过智能技术生成

QMimeData 类

QMimeData类为记录自身MIME信息的数据提供了一个容器

 

#include <QMimeData>

 

继承自QObject

 

详细描述

QMimeData类为记录自身MIME信息的数据提供了一个容器

QMimeData通常用于描述可以被存储在剪贴板、可以被通过拖拽机制传输的信息。QMimeData对象将他们持有的数据与相应的MIME类型相关联,以确保信息可以在两个应用程序之间被安全的传输或是在同一个应用中被安全的复制

 

QMimeData对象通常使用new来创建,并且支持QDrag或QClipboard对象,这使得Qt能够管理他们使用的内存

 

单个QMimeData对象可以同时使用几种不同的格式存储同一数据, formats() 函数按优先级的顺序返回一个可用格式的list, data()函数返回与一个MIME类型关联的原始数据,使用setData()函数为MIME类型设置数据

 

对于最常见的MIME类型,QMimeData类提供了方便函数来访问数据

 

比如,如果要一个widget接收URL拖拽,你应该这样写:

void MyWidget::dragEnterEvent(QDragEnterEvent*e
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值