Qt中Qlabel接受图片拖放

1. 先在ui框中放入label控件,并调至合适大小:
暂时就命名为:label

2. 代码中头文件应包含:

#include <QUrl>
#include <QList>
#include <QtGui/QPixmap>
#include <QtGui/QDragEnterEvent>
#include <QtGui/QDropEvent>
#include <QImage>
#include <QMimeData>

3. 实现代码:

bool MainWindow::eventFilter(QObject *watched, QEvent *event)
{if(watched == ui->label){if(event->type() == QEvent::DragEnter){// when monse is in label, label waitting drop is trueQDragEnterEvent *dee = dynamic_cast<QDragEnterEvent*>(event);dee->acceptProposedAction();return true;}else if(event->type() == QEvent::Drop){// when the Drop is occurred, label gets its eventQDropEvent *de = dynamic_cast<QDropEvent*>(event);QList<QUrl> urls = de->mimeData()->urls();if (urls.isEmpty()){return true;}QString path = urls.first().toLocalFile();QImage image(path);// QImage is optimized in I/Oif(!image.isNull()){image = image.scaled(ui->label->size(),Qt::KeepAspectRatio,Qt::SmoothTransformation);ui->label->setPixmap(QPixmap::fromImage(image));}return true;}}return QWidget::eventFilter(watched, event);
}

4. 即可实现拖放显示

Qt中Qlabel 图片拖放显示相关推荐

  1. QT中png图片无法显示的问题

    最近在学霍亚飞的<Qt Creator快速入门>,在练习的时候,发现png图片老是不能运行:网上搜索了一下解决方法: 总结如下: 1.最基本的是看自己文件路径是不是对的,有时候设置的是相对 ...

  2. Vue.js项目中,当图片无法显示时则显示默认图片

    Vue.js项目中,当图片无法显示时则显示默认图片使用onerror方法 最近在学习Vue时,遇到了一个问题,就是从后台传过来的图片路径无效时,需要在页面显示默认图片 本人试了3种方法,2种方法失败了 ...

  3. QT学习之解决QT中QIcon图标不显示的问题

    QT学习之解决QT中QIcon图标不显示的问题 参考文章: (1)QT学习之解决QT中QIcon图标不显示的问题 (2)https://www.cnblogs.com/yang12318/p/1069 ...

  4. Element-UI中走马灯图片无法显示的问题

    Element-UI中走马灯图片无法显示的问题 废话不多说代码奉上:这里说一下height的大小问题,我放的图片是3200*1250的 看了其他帖子上试了很多都不行,后来发现可能就是图片大小的原因 然 ...

  5. VSCode中MarkDown图片无法显示

    VSCode中MarkDown图片无法显示 这是由于 VSCode 中MarkDown默认配置中只允许载入安全内容,更改设置即可. 在MarkDown文件中输入快捷键 Ctrl + Shift + P ...

  6. html邮件修改不了图片,邮件模板中的图片不显示,该怎么解决

    邮件模板中的图片不显示 这个是我邮件模板 html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www ...

  7. Qt中Qlabel控件实现文本多种颜色样式显示,支持换行。

    在Qt文本开发中,需要用到文本不通颜色显示样式,有的开发者可能会选择一种颜色一个Qlabel控件,这样是可以实现相应的效果,但是会出现文本长度不确定,导致换行问题. 下面介绍一种在同一个Qlabel控 ...

  8. QT中QLabel的常见使用方法

    QLabel标签控件在QT中算是比较常见的,它一般都是用来显示文本内容,当然它的功能不是只局限在这里,还可以用它来显示照片,gif动画等,那接下来就看看是如何操作它的吧: 首先先创建一个新项目,在ui ...

  9. Qt项目背景图片无法显示

    问题描述: Qt加入背景图片,可运行时背景图片无法显示 这是Qt Designer中的界面,而在运行后背景是一片空白. 原因分析 我开始以为是我的qss代码出错了.当然代码开始也有一点问题,我没有把图 ...

最新文章

  1. php 获取下拉框选中的文本,jQuery实现select下拉框获取当前选中的文本
  2. POJ - 3160 Father Christmas flymouse DAG最长路
  3. 简述PHP中有哪些运算符,PHP运算符简述
  4. Linux大作业任务书,《Linux系统管理》期末大作业任务书(计网14级).doc
  5. oracle测试没响应,Oracle JDBC 没响应,是不是BUG?
  6. flask前端显示MySQL数据_flask怎样查询mysql并显示在页面上
  7. 解决sockjs.js?9be2:1609 GET http://192.168.1.1:8080/sockjs-node/info?t=1634257459…… 中的报错
  8. 解决element-ui table 表格排列错位问题
  9. c语言中文刷屏,c语言二维数组刷屏练习.doc
  10. iPhone:文本设计的注意事项
  11. pageoffice 骑缝章_Java 集成PageOffice自带印章配置连接MySQL
  12. PostgreSQL数据保留窗口功能的使用
  13. 业余无线电通信_业余电台操作证书查询方式
  14. 看了扎克伯格的Avatar,我更想在VR里当大猩猩
  15. 圣斗士星矢游戏抽奖计算机怎么计算,圣斗士星矢手游最划算抽奖方式推荐
  16. c51时钟数码管显示流程图_基于51单片机的8位数码管电子时钟仿真图及源代码详细资料概述...
  17. 洛谷p1307数字反转 c语言
  18. Android Studio update失败问题 some conflicts were found in the installation area
  19. 今日科技联播:中国团队夺得MegaFace百万人脸识别冠军,精度99%再创记录
  20. 空间一致性是什么意思

热门文章

  1. AssertionError: train: No labels found in ****\train.cache报错
  2. php 图片印章_PHP实现中文圆形印章特效
  3. 2019考研 | 天津大学计算机专硕初试394分考研经历与经验总结(初试)
  4. 小窍门解决大问题(绝对值得收藏)
  5. html地址欄小圖標,网站地址栏前面的小图标favicon.ico制作方法
  6. CodeForces - 1436D Bandit in a City
  7. 电网调度计算机系统目前有三种,电网调度厂站端调试员高级工技能鉴定试题整理(包括图).doc...
  8. Maven学习——maven基础
  9. SQL Server安装提示安装程序无法通过windows update服务搜索更新
  10. 第四章——软件测试流程和规范