• 7928阅读
  • 5回复

Qt中设置一个部件的能跟随部件大小进行拉伸的背景图片 [复制链接]

上一主题 下一主题
离线XChinux
 

只看楼主 倒序阅读 楼主  发表于: 2008-12-21
— 本帖被 XChinux 执行加亮操作(2008-12-21) —
文章见:http://hi.baidu.com/xchinux/blog/item/329f6509ce5702c83ac76376.html

内容如下:

Qt中设置一个部件的能跟随部件大小进行拉伸的背景图片,论坛个经常有人问到,现在把我自己用的类帖上来:

imagewidget.hpp
===============================================================
#ifndef IMAGEWIDGET_HPP
#define IMAGEWIDGET_HPP

#include <QtCore>
#include <QtGui>

class ImageWidget : public QWidget
{
    Q_OBJECT
public:
    ImageWidget(QWidget *parent = 0, Qt::WindowFlags f = 0);
    virtual ~ImageWidget();
protected:
    void resizeEvent(QResizeEvent *event);
private:
    QImage _image;
};

#endif
=================================================================

imagewidget.cpp
=================================================================
#include "imagewidget.hpp"

ImageWidget::ImageWidget(QWidget *parent, Qt::WindowFlags f)
    : QWidget(parent, f)
{
    _image.load("my_welcome_background.png");
    setAutoFillBackground(true);
}

ImageWidget::~ImageWidget()
{
}

void ImageWidget::resizeEvent(QResizeEvent *event)
{
    QWidget::resizeEvent(event);
    QPalette pal(palette());
    pal.setBrush(QPalette::Window,
                QBrush(_image.scaled(event->size(), Qt::IgnoreAspectRatio,
                        Qt::SmoothTransformation)));
    setPalette(pal);
}
=================================================================
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线wd007

只看该作者 1楼 发表于: 2008-12-21
呵呵,不错,谢谢
欢迎访问我的博客,一起学习提高
http://blog.csdn.net/qter_wd007
离线earctan

只看该作者 2楼 发表于: 2008-12-22
哇,相当简单的代码就实现了啊。
离线nmiirq

只看该作者 3楼 发表于: 2008-12-22
顶楼主!
离线fantalin
只看该作者 4楼 发表于: 2008-12-22
请教一下,
怎么认识 楼主的这种方法和设置styleSheet的方法的异同呢
各自有什么特点
离线eagle
只看该作者 5楼 发表于: 2011-05-25
很好,学习了
快速回复
限100 字节
 
上一个 下一个