由于老周的示例代码都是用 VS Code + CMake + Qt 写的,为了不误导人,在标题中还是加上“VS Code”好一些。 上次咱们研究了剪贴板的基本用法,也了解了叫 QMimeData 的重要类。为啥要强调这个类?因为接下来扯到的拖放操作也是和它有关系。哦,对了,咱们先避开一下主题,关于剪贴板,咱们还要说一点:就是如何监听剪贴板内数据的变化并做出响应。这个嘛,就有点像迅雷监听剪贴板的功能,发现你复制的东西里包含有下载地址的话,就自动弹出新下载任务窗口。 QClipboard 类有好几个满足此功能的信号,说这个前咱们要先知道一下 QClipboard 类包含一个 Mode 枚举。这个枚举定义了三个成员: QClipboard::Clipboard:数据存储在全局剪贴板中。此模式是各系统通用的,尤其是 Windows。 QClipboard::Selection:通过鼠标选取数据。X 窗口系统是 C/S 架构,数据选择后会发送到目标窗口,可用鼠标中键粘贴。 QClipboard::FindBuffer:macOS 专用的粘贴方式。 所以,我们写代码时一般不刻意指定某个...