1. 概述
复制文本或图片到剪切板在QT
中可以使用QClipboard
进行操作
2. 代码示例
#include "widget.h"
#include "ui_widget.h"
#include <QClipboard>
#include <QApplication>
#include <QImage>
#include <QMimeData>
#include <QUrl>
#include <QByteArray>
Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
}
Widget::~Widget()
{
delete ui;
}
// 复制文本
void Widget::on_pushButton_clicked()
{
QClipboard* clip = QApplication::clipboard();
clip->setText("SSSS");
}
// 复制图片
void Widget::on_pushButton_2_clicked()
{
QImage image;
image.load("D:/TestCode/QTCode/build-3_CopyToSystemCopyArea-Desktop_Qt_5_15_2_MSVC2019_32bit-Debug/debug/test.png");
QClipboard* clip = QApplication::clipboard();
clip->setImage(image);
//clip->setPixmap(QPixmap::fromImage(image));
}
界面如下:
效果如下(Windows+V
):