Qt實現截屏功能-代碼實現版本

界面如下:

 .h文件:

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QMainWindow>
#include "qcustomplot.h"
#include <QPixmap>
#include <QApplication>
#include <QDesktopWidget>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private slots:
   void on_pushButton_clicked();

private:
    Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H

.cpp文件:

#include "mainwindow.h"
#include "ui_mainwindow.h"

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
    ui(new Ui::MainWindow)
{
    ui->setupUi(this);
    InitCurve();


}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::on_pushButton_clicked()
{
    QPixmap pixmap = QPixmap::grabWindow(QApplication::desktop()->winId(), this->x(), this->y(), this->width(), this->height());

    QDateTime dt = QDateTime::currentDateTime();

    QString filename = QString("/media/sdb1/%1.jpg").arg(dt.toString("yyyyMMdd-hhmmss"));

    pixmap.save(filename);
}

其中/media/sdb1是U盤路徑

 

親測編譯到arm板子上運行好用

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章