C++ Excel单元格作为图像复制到剪贴板的格式是什么?为什么QMimeData显示这种奇怪的行为?

C++ Excel单元格作为图像复制到剪贴板的格式是什么?为什么QMimeData显示这种奇怪的行为?,c++,excel,qt,clipboard,C++,Excel,Qt,Clipboard,我正在用qimedata做一些实验,并从剪贴板复制/粘贴。我刚刚注意到,当我将一些单元格从Excel(2016)工作表复制到剪贴板时,除了触发两个剪贴板更改事件外,formats()方法没有显示任何可以直接跟踪图像的MIME格式,即使hasImage()返回true 例如,我有一个从Clipboard::dataChanged()信号触发的代码: const QClipboard *clipboard = QApplication::clipboard(); const QMimeData *m

我正在用qimedata做一些实验,并从剪贴板复制/粘贴。我刚刚注意到,当我将一些单元格从Excel(2016)工作表复制到剪贴板时,除了触发两个剪贴板更改事件外,
formats()
方法没有显示任何可以直接跟踪图像的MIME格式,即使
hasImage()
返回
true

例如,我有一个从
Clipboard::dataChanged()
信号触发的代码:

const QClipboard *clipboard = QApplication::clipboard();
const QMimeData *mimeData = clipboard->mimeData();
qDebug() << mimeData->formats().contains(QLatin1String("application/x-qt-image"));
qDebug() << mimeData->hasFormat(QLatin1String("application/x-qt-image"));
qDebug() << mimeData->hasImage();
我深入研究了(我正在使用版本5.15.1,在Windows1064位上,使用QtCreator+GCC和预编译库),但发现第一行应该与第二行完全相同,但它没有。更糟糕的是,格式列表中没有返回图像MIME格式。我理解错了什么吗?我能做些什么来让QMimeData正确显示所有格式?我从
formats()
获得了这个字符串列表:

false
true
true
"application/x-qt-windows-mime;value="Biff12"
"application/x-qt-windows-mime;value="Biff8"
"application/x-qt-windows-mime;value="Biff5"
"application/x-qt-windows-mime;value="XML Spreadsheet"
"text/html"
"text/plain"
"application/x-qt-windows-mime;value="Csv"
"application/x-qt-windows-mime;value="Hyperlink"
"application/x-qt-windows-mime;value="Rich Text Format"
"application/x-qt-windows-mime;value="Embed Source"
"application/x-qt-windows-mime;value="Object Descriptor"
"application/x-qt-windows-mime;value="Link Source"
"application/x-qt-windows-mime;value="Link Source Descriptor"
"application/x-qt-windows-mime;value="Link"