在剪贴板中的内容,可以是:纯文本、HTML、图片、URL、以及Html
QClipboard Class
The QClipboard class provides access to the window system clipboard. More...
Header: | #include <QClipboard> |
qmake: | QT += gui |
Inherits: |
Public Types
enum | Mode { Clipboard, Selection, FindBuffer } |
Public Functions
void | clear(QClipboard::Mode mode = Clipboard) |
QImage | image(QClipboard::Mode mode = Clipboard) const |
const QMimeData * | mimeData(QClipboard::Mode mode = Clipboard) const |
bool | ownsClipboard() const |
bool | ownsFindBuffer() const |
bool | ownsSelection() const |
QPixmap | pixmap(QClipboard::Mode mode = Clipboard) const |
void | setImage(const QImage &image, QClipboard::Mode mode = Clipboard) |
void | setMimeData(QMimeData *src, QClipboard::Mode mode = Clipboard) |
void | setPixmap(const QPixmap &pixmap, QClipboard::Mode mode = Clipboard) |
void | setText(const QString &text, QClipboard::Mode mode = Clipboard) |
bool | supportsFindBuffer() const |
bool | supportsSelection() const |
QString | text(QClipboard::Mode mode = Clipboard) const |
QString | text(QString &subtype, QClipboard::Mode mode = Clipboard) const |
Signals
void | changed(QClipboard::Mode mode) |
void | |
void | |
void |
==========
QApplication::clipboard()->clear(); // 清空剪切板
QClipboard系统剪切板访问
QClipboard
QClipboard类提供了对系统剪切板的访问,可以在应用程序之间复制和粘贴数据,它的操作类似于QDrag类,,并使用类似的数据结构,QApplication类有一个静态方法clipboard(),它的返回值对剪切板对象的引用,任何类型的MimeData都可以从剪切板复制或粘贴。
QClipboard类中的常用方法
clear() 清空剪切板的内容
setImage() 将QImage对象复制到剪切板中
setMimeData() 将MIME数据设置为剪切板
setPixmap() 从剪切板中复制Pixmap对象
setText() 从剪切板中复制文本
text() 从剪切板中检索文本
如何判断剪切板为空
Option Explicit
'判断剪贴板是否为空
Function CheckClipboard() As Boolean
If Clipboard.GetText = "" Then
CheckClipboard = False
Else
CheckClipboard = True
End If
End Function
Private Sub Command1_Click()
MsgBox CheckClipboard
End Sub
Private Sub Command2_Click()
Clipboard.Clear
End Sub
https://bbs.csdn.net/topics/390749143?list=lz
====================
剪贴板,可能比较陌生,但是日常操作中的Ctrl+C和Ctrl+V,一定很熟悉,这就是使用了剪贴板。然后,从一个文本文件中复制一段内容到另一文本文件,这也使用到了剪贴板。
剪贴板操作,实际上是进程间的通信。
注意:剪贴板是由操作系统维护的
( 注:复制和粘贴,往往需要在不同来源,不同类型的软件之间进行的,这需要操作系统的支持。而对于某个具体的软件而言,直接使用操作系统自带的就可以了,这样最方便。。当然,也可以使用自定义的剪贴板,但这似乎意义不大?除非有特别的需求? )
#include <QClipboard> / / Qt5记得包含
//------------------------
QClipboard *clipboard = QApplication::clipboard(); //获取系统剪贴板指针
QString originalText = clipboard->text(); //获取剪贴板上文本信息
clipboard->setText(newText); //设置剪贴板内容
————————————————
版权声明:本文为CSDN博主「子建莫敌」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/u013015629/article/details/52870448
Qt剪切板QClipboard 复制粘贴自定义数据
QClipboard 提供了几组函数用来访问常见的数据类型,如果我们想操作的数据类型是QString、QImage或QPixmap,可以直接使用这些接口。
QImage image(QClipboard::Mode mode = Clipboard) const
void setImage(const QImage &image, QClipboard::Mode mode = Clipboard)
QPixmap pixmap(QClipboard::Mode mode = Clipboard) const
void setPixmap(const QPixmap &pixmap, QClipboard::Mode mode = Clipboard)
QString text(QClipboard::Mode mode = Clipboard) const
QString text(QString &subtype, QClipboard::Mode mode = Clipboard) const
void setText(const QString &text, QClipboard::Mode mode = Clipboard)
二、自定义数据类型
————————————————
版权声明:本文为CSDN博主「mouze_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/dhvdhd/article/details/125982778