Qt怎么添加图片

eynixtiyin 2010-01-18 01:34:09
我需要在Qt窗口中添加自定义的图片,还要用鼠标拖动这个图片,这该怎么做?
我是初学者,希望得到详细的答案。谢谢!
...全文
5290 24 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
24 条回复
切换为时间正序
请发表友善的回复…
发表回复
luoyezhiqiuye 2012-02-26
  • 打赏
  • 举报
回复
现在正要做个这方面的练习,学习中。。。
turkeyzhu 2012-02-26
  • 打赏
  • 举报
回复
protected:
void mousePressEvent( QMouseEvent *);
void mouseMoveEvent( QMouseEvent *);
private:
QPoint clickPos;
};

void MoveMe::mousePressEvent( QMouseEvent *e )
{
clickPos = e->pos();
}

void MoveMe::mouseMoveEvent( QMouseEvent *e )
{
move( e->globalPos() - clickPos );
}

楼上的这个只能实现最后的目的,实现的效果没有,简单的图片处理可以的,例如图片的自适应尺寸,旋转,缩放等等,要实现图片拖动的效果的例如像android的抽屉的,需要加遮盖,然后用遮盖的算法实现。
fcly1981826ly 2011-07-21
  • 打赏
  • 举报
回复
楼主注意要结帖哦
alanshuxin 2011-01-20
  • 打赏
  • 举报
回复
我还没实现对添加进去的图片实现用鼠标移动的功能 求解
alanshuxin 2011-01-20
  • 打赏
  • 举报
回复
在QT中添加自己的图片文件不难 创建一个类继承QGraphicsView 用QFileDialog创建一个选择文件的对话框 会返回一个你所需文件的绝对路径 存到QString里面 然后用QPixmap(location)方法获取到这个图片 最后用QGraphicsScene的addPixmap添加进去即可
不知道我说清楚没
中才德创 2010-07-07
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 lijuan_nie 的回复:]
在所在工程的文件夹下新建一个images的文件夹,将图片文件存放在images文件里面。再新建一个.qrc 的文件,将图片文件的信息加入该文件里。如<resource>
<file>images/1.png</file>
用qmake -project 编译过的,需要在.pro文件里添加一句 RESOURCES = *.qrc
我在QWidget 里添加的图片方法是:
QWid……
[/Quote]这个支持一下,感觉答如所问。
BlackRose 2010-07-05
  • 打赏
  • 举报
回复
QGraphicsScene
很方便的支持移动
QGraphicsLineItem 中的方法:setFlag(QGraphicsItem::ItemIsMovable,true);
ilovevc709 2010-07-02
  • 打赏
  • 举报
回复
QtDemo -> Drag and Drop.
有好几个例子的。
guchu 2010-06-15
  • 打赏
  • 举报
回复
用ui可以实现吧
mid__night 2010-06-13
  • 打赏
  • 举报
回复
label->setPixmap(QPixmap("filename.png"));

in mouseMoveEvent ,let the label follows the mouse moving.
xyzh8298 2010-06-07
  • 打赏
  • 举报
回复
谢谢,学习学习了!
tuo_li 2010-02-05
  • 打赏
  • 举报
回复
学习,学习,支持一下。
ssawee 2010-02-04
  • 打赏
  • 举报
回复
demo和文档中有
aoxuehan0424 2010-02-02
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 eynixtiyin 的回复:]
引用 1 楼 aoxuehan0424 的回复:
有点儿难度。
我做过一个图片浏览器。很简单。但是没有实现自己拖动图片。

我用的label来显示图片
label->setPixmap(QPixmap::fromImage(image));
谢谢,但是怎么让image选择某个图片?
[/Quote]

可以弄个对话框让用户选择某个图片啊~
MicroSky2813 2010-01-31
  • 打赏
  • 举报
回复
class QMdiArea;
class QMdiSubWindow;

你可以注意下这两个类,可以很轻松实现你所说的,类似photoshop里面的那种内接窗口实现图片,
DayDayUpCQ 2010-01-30
  • 打赏
  • 举报
回复
初学者,学习支持一下。
Inhibitory 2010-01-27
  • 打赏
  • 举报
回复
绝对定位, 然后使用move来移动放置图片的widget即可.
lijuan_nie 2010-01-26
  • 打赏
  • 举报
回复
在所在工程的文件夹下新建一个images的文件夹,将图片文件存放在images文件里面。再新建一个.qrc 的文件,将图片文件的信息加入该文件里。如<resource>
<file>images/1.png</file>
用qmake -project 编译过的,需要在.pro文件里添加一句 RESOURCES = *.qrc
我在QWidget 里添加的图片方法是:
QWidget *x = new QWidget;
x->setWindowTitle("hello!");
x->setGeometry(QRect(100,75,530,380));
x->setWindowIcon(QIcon(":/images/1.png"));//这个是对widget框架的图标的图片
QPalette palette;
palette.setBrush(QPalette::Base,QBrush(QPixmap(":/images/1.png")));//背景图片
x->setPalette(palette);
是我111 2010-01-26
  • 打赏
  • 举报
回复
protected:
void mousePressEvent( QMouseEvent *);
void mouseMoveEvent( QMouseEvent *);
private:
QPoint clickPos;
};

void MoveMe::mousePressEvent( QMouseEvent *e )
{
clickPos = e->pos();
}

void MoveMe::mouseMoveEvent( QMouseEvent *e )
{
move( e->globalPos() - clickPos );
}
buf1024 2010-01-18
  • 打赏
  • 举报
回复
生新实现
paintEvent
mousePressEvent
mouseReleaseEvent
等。
在paintEvent里将图片画出来。
加载更多回复(4)
为了使更多的Qt初学者能尽快入门Qt,也为了QtQt Creator的快速普及,我们花费大量精力写出了这一系列教程。虽然教程的知识可能很浅显,虽然教程的语言可能不规范,但是它却被数十万网友所认可。我们会将这一系列教程一直写下去,它将涉及Qt的方方面面 一、Qt Creator的安装和hello world程序的编写 二、Qt Creator编写多窗口程序 三、Qt Creator登录对话框 四、Qt Creator添加菜单图标 五、Qt Creator布局管理器的使用 六、Qt Creator实现文本编辑 七、Qt Creator实现文本查找 八、Qt Creator实现状态栏显示 九、Qt Creator中鼠标键盘事件的处理实现自定义鼠标指针 十、Qt Creator中实现定时器和产生随机数 十一、Qt 2D绘图(一)绘制简单图形 十二、Qt 2D绘图(二)渐变填充 十三、Qt 2D绘图(三)绘制文字 十四、Qt 2D绘图(四)绘制路径 十五、Qt 2D绘图(五)显示图片 十六、Qt 2D绘图(六)坐标系统 十七、Qt 2D绘图(七)Qt坐标系统深入 十八、Qt 2D绘图(八)涂鸦板 十九、Qt 2D绘图(九)双缓冲绘图简介 二十、Qt 2D绘图(十)图形视图框架简介 二十一、Qt数据库(一)简介 二十二、Qt数据库(二)添加MySQL数据库驱动插件 二十三、Qt数据库(三)利用QSqlQuery类执行SQL语句(一) 二十四、Qt数据库(四)利用QSqlQuery类执行SQL语句(二) 二十五、Qt数据库(五)QSqlQueryModel 二十六、Qt数据库(六)QSqlTableModel 二十七、Qt数据库(七)QSqlRelationalTableModel 二十八、Qt数据库(八)XML(一) 二十九、Qt数据库(九)XML(二) 三十、Qt数据库(十)XML(三) 三十一、Qt 4.7.0及Qt Creator 2.0 beta版安装全程图解 三十二、第一个Qt Quick程序(QML程序) 三十三、体验QML演示程序 三十四、Qt Quick Designer介绍 三十五、QML组件 三十六、QML项目之Image和BorderImage 三十七、Flipable、Flickable和状态与动画 三十八、QML视图 三十九、QtDeclarative模块 四十、使用Nokia Qt SDK开发Symbian和Maemo终端软件 四十一、Qt网络(一)简介 四十二、Qt网络(二)HTTP编程 四十三、Qt网络(三)FTP(一) 四十四、Qt网络(四)FTP(二) 四十五、Qt网络(五)获取本机网络信息 四十六、Qt网络(六)UDP 四十七、Qt网络(七)TCP(一) 四十八、Qt网络(八)TCP(二)

16,809

社区成员

发帖
与我相关
我的任务
社区描述
Qt 是一个跨平台应用程序框架。通过使用 Qt,您可以一次性开发应用程序和用户界面,然后将其部署到多个桌面和嵌入式操作系统,而无需重复编写源代码。
社区管理员
  • Qt
  • 亭台六七座
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧