1、图片随窗口自适应缩放

  1. #include "mainwindow.h"
  2. #include "ui_mainwindow.h"
  3. MainWindow::MainWindow(QWidget *parent) :
  4. QMainWindow(parent),
  5. ui(new Ui::MainWindow)
  6. {
  7. ui->setupUi(this);
  8. ui->label->setPixmap(QPixmap("./1.jpg"));
  9. //================================//
  10. ui->label->setScaledContents(true); //设置自动缩放
  11. //================================//
  12. }
  13. MainWindow::~MainWindow()
  14. {
  15. delete ui;
  16. }
  17. //好像可以不用该函数
  18. void MainWindow::resizeEvent(QResizeEvent *)
  19. {
  20. ui->label->resize(ui->label->width(), ui->label->height());
  21. ui->label->setScaledContents(true);
  22. }

2、控件自动适应窗口大小

有时候,在 Qt 的界面设计中,需要最大化窗口。如下图所示,如果点击最大化按钮,这时便有两种情况发生:
Qt 实现图片随窗口自适应缩放 - 图1

  1. 点击最大化按钮后,界面里面的控件没有最大化效果;
  2. 点击最大化按钮后,界面的空间也跟着铺满屏幕;

能铺满屏幕的操作是:右击主界面布局,然后选择垂直布局就可以实现。