QT显示图片 .转

人民时讯快报 次浏览

首先你得加载一张能显示透明的图片,jpg格式肯定是不行的,一般都是png
还有不同的部件加载图片的方法也不太相同,比如:
QLabel加载图片:
C/C++ code
    QString strPath=imagePath.value(day);  //图片路径
    QPixmap pix(strPath);
    dayLabel->setPixmap(pix);




QPushButton加载图片:
C/C++ code
  button->setIcon(QIcon("toolbutton.png")); 
   button->setIconSize(QSize(48, 48));


其中setIconSize函数是用来截取图片的显示区域,如果没有该函数,该图片是被缩放的放到图片上
用调色板加载图片:
C/C++ code
      QPalette p = palette(); 
       p.setBrush(QPalette::Button, QBrush(QPixmap("toolbutton.png"))); 
       setPalette(p);


另外实现按钮的透明:
C/C++ code
    button->setFlat(true);




还有就是用绘制事件函数了:
C/C++ code
    QPixmap arrayImage("/home/image/array.png"); //图片路径
    QRect arrayRect(0,0,50,50); //截取图片区域
    QPainter painter;
    painter.drawPixmap(QPoint(100,100),arrayImage,arrayRect); //打印图片