• 4298阅读
  • 3回复

[提问]Qt怎样添加自己喜欢的图片做界面背景或者位图?求资料 [复制链接]

上一主题 下一主题
离线wuyueqiuku
 

只看楼主 倒序阅读 楼主  发表于: 2015-11-14
关键词: 界面图片资料
求介绍详细Qt图片做界面背景或者位图
离线z609932088

只看该作者 1楼 发表于: 2015-11-16
没懂什么意思,做背景,直接设置不就可以了吗
有阳光的地方就是青春
离线XChinux

只看该作者 2楼 发表于: 2015-11-17
给楼主帖一个吧,基类可以是任意QWidget派生类:
  1. class MyForm : public QWidget
  2. {
  3.     Q_OBJECT
  4. public:
  5.     DefaultForm(QWidget *parent = 0, Qt::WindowFlags f = 0);
  6.     ~DefaultForm();
  7. protected:
  8.     void resizeEvent(QResizeEvent *event);
  9.     void paintEvent(QPaintEvent *event);
  10. private:
  11.      QPixmap _pxbg;
  12. };


  1. DefaultForm::DefaultForm(QWidget *parent, Qt::WindowFlags f)
  2.     : QWidget(parent, f)
  3. {
  4.     _pxbg = QPixmap("/myimage/background.jpg").scaled(
  5.                 size(), Qt::IgnoreAspectRatio,
  6.                 Qt::SmoothTransformation);
  7. }
  8. DefaultForm::~DefaultForm()
  9. {
  10. }
  11. void DefaultForm::resizeEvent(QResizeEvent *event)
  12. {
  13.     QWidget::resizeEvent(event);
  14.     if (event->oldSize() != event->size())
  15.     {
  16.         _pxbg = QPixmap("/myimage/background.jpg").scaled(
  17.                     event->size(), Qt::IgnoreAspectRatio,
  18.                     Qt::SmoothTransformation);
  19.     }
  20. }
  21. void DefaultForm::paintEvent(QPaintEvent *event)
  22. {
  23.     QPainter painter(this);
  24.     painter.drawPixmap(event->rect(), _pxbg);
  25.     QWidget::paintEvent(event);
  26. }
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
离线XChinux

只看该作者 3楼 发表于: 2015-11-17
背景图会自动缩放。
二笔 openSUSE Vim N9 BB10 XChinux@163.com 网易博客 腾讯微博
承接C++/Qt、Qt UI界面、PHP及预算报销系统开发业务
快速回复
限100 字节
 
上一个 下一个