• 6777阅读
  • 11回复

[提问]显示图片的问题 [复制链接]

上一主题 下一主题
离线a2263667
 

只看楼主 倒序阅读 楼主  发表于: 2011-04-24
我想将一张图片显示出来。
这里是用QPixmap的方法。
但是一直显示不出。
文件在附件里的painter01这文件夹里,图片所在文件夹images也在里面。
显示图片的函数是在 dialog.cpp 里的  


void Dialog::paintEvent(QPaintEvent *event)
{
    QPainter painter(this);


    QPixmap pix;
    pix.load("./images/2.jpg");
    painter.drawPixmap(0,0,500,600,pix);
}


但是一直显示不出,请问是怎么回事?


我用的是Qt 4.7.1       Creator 2.1。
还有,#include<QPixmap>  和  #include “qpixmap.h"  有什么区别(Creator里的自动补全会自动出现这两个)?


刚学Qt。请指教
[ 此帖被a2263667在2011-04-24 22:35重新编辑 ]
附件: painter01.rar (975 K) 下载次数:10
离线dbzhang800

只看该作者 1楼 发表于: 2011-04-24
呵呵,刚学Qt到不怕,就怕你是刚学C++啊 。
离线lukepower
只看该作者 2楼 发表于: 2011-04-24
初学者好奇,哪位大侠解决哈这个问题呢!
离线roywillow

只看该作者 3楼 发表于: 2011-04-24
pix.load("./images/2.jpg");
路径开头的这个点是……?
专业维修核潜艇,回收二手航母、二手航天飞机,大修核反应堆,拆洗导弹发动机更换机油,无人侦察机手动挡改自动,航天飞机保养换三滤,飞碟外太空年检 ,各型号导弹加装迎宾踏板,高空作业擦洗卫星表面除尘、打蜡及抛光,东风全系列巡航导弹。并提供原子对撞机。量大从优,有正规发票。
离线ppdayz

只看该作者 4楼 发表于: 2011-04-24
回 楼主(a2263667) 的帖子
  1. void Dialog::paintEvent(QPaintEvent *event)
  2. {
  3.     QPainter *painter = new QPainter(this);
  4.     QPixmap pix ;
  5.     pix.load(":/file/images/2.jpg");
  6.     painter->drawPixmap(0,0,500,600,pix);
  7.     /* QRectF round(65,20,320,320);
  8.        painter.drawEllipse(round);
  9.        painter.setPen(Qt::black);
  10.    */
  11. }


这样才对吧。。。

楼主的c++应该去补补了,还有,引用qrc的时候注意路径。。
离线lukepower
只看该作者 5楼 发表于: 2011-04-24
Re:回 楼主(a2263667) 的帖子
引用第4楼ppdayz于2011-04-24 22:44发表的 回 楼主(a2263667) 的帖子 :
[code]
void Dialog::paintEvent(QPaintEvent *event)
{
    QPainter *painter = new QPainter(this);
.......

再弱弱的问个问题,如果我想这张图片加在label上该怎么改动这个程序呢?
谢谢了
离线ppdayz

只看该作者 6楼 发表于: 2011-04-24
回 5楼(lukepower) 的帖子
  
  1.    QLabel *boatIcon = new QLabel(this);
  2.    boatIcon->setPixmap(QPixmap(":/images/boat.png"));
  3.   

离线ppdayz

只看该作者 7楼 发表于: 2011-04-24
最好再加上几句
  1.     QLabel *boatIcon = new QLabel(this);
  2.     boatIcon->setPixmap(QPixmap(":/images/boat.png"));
  3.     boatIcon->show();
  4.     boatIcon->setAttribute(Qt::WA_DeleteOnClose);

Qt::WA_DeleteOnClose   :    Makes Qt delete this widget when the widget has accepted the close event
离线a2263667

只看该作者 8楼 发表于: 2011-04-24
回 4楼(ppdayz) 的帖子
谢谢!我是SB我自重......
离线a2263667

只看该作者 9楼 发表于: 2011-04-24
回 3楼(roywillow) 的帖子
好像有在网上看过是表示文件所在路径....应该是记错了....不好意思.....
离线ppdayz

只看该作者 10楼 发表于: 2011-04-25
回 8楼(a2263667) 的帖子
写代码没什么sb不sb的,能问就不傻,最怕不懂还不问的,那种是真傻
离线a2263667

只看该作者 11楼 发表于: 2011-04-25
回 10楼(ppdayz) 的帖子
嗯。谢谢!
还有,想再问一下问题。想让一个圆绕它的圆心旋转,像轮盘那样转。请问有什么好的方法。
我起初是想用animation,但是不知道可不可以实现那样转?
快速回复
限100 字节
 
上一个 下一个