qt之QDrag

QDrag类在Qt中用于实现基于MIME数据的拖放操作。通过创建QDrag对象,设置QMimeData并指定源窗口,可以实现数据的拖动。在拖放过程中,可以设置pixmap代表数据并调整hotSpot来定义鼠标焦点。当拖放动作开始,通过exec()函数启动,并根据用户选择的DropAction返回结果。源和目标窗口可通过source()和target()获取。
摘要由CSDN通过智能技术生成

这个QDrag类提供了MIME基础数据类型的拖动和释放,

拖动和放下对用户拷贝和移动数据是一种直观的方式。

 

数据的移动通过QMimeData的拖动和放下完成,设置数据是通过如下的方式

 

     QDrag *drag = new QDrag(this);

        QMimeData *mimeData = new QMimeData;

 

        mimeData->setText(commentEdit->toPlainText());

        drag->setMimeData(mimeData);

Drag->setMimeData 指定QMimeData对象到QDrag对象,此时QDrag必须在堆中被构建,因为在拖放完成之后 ,qt会清理QDrag对象

当拖动进行时,我们可以用pixmap来代表拖动的数据,这个pixmap可以用来代表MiME 类型,我们也可以通过函数setpixmap(),来指定pixmap,而这个鼠标的焦点,我们可以通过setHotSpot来指定鼠标在拖动期间在pixmap

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值