在使用 CLion 开发 Qt + QML 的过程中,有时会遇到一个非常奇怪的问题:
👉 在 QML 文件中无法粘贴(Ctrl+V 无反应),但在 .cpp/.h 文件中粘贴正常。
👉 复制(Ctrl+C)正常,只有粘贴失效。
这个问题困扰了不少开发者,看似随机出现,其实与 CLion 的 QML 编辑器机制有关。
本文基于实际踩坑经验,总结出 4 大常见原因 + 对应解决方案,亲测有效。
目录
-
QML 编辑器输入法冲突(最常见)
-
QML 插件线程崩溃导致粘贴失效
-
系统剪贴板服务异常(Qt QPA 报错)
-
QML 文件被 CLion 错误锁定为只读
-
引擎切换
1. QML 编辑器输入法冲突(最常见)
CLion 的 QML 编辑器是基于 Qt 的,而 Qt 在 Windows 下最容易与 中文输入法(尤其是微软拼音) 发生冲突。
当输入法或语言环境异常时,QML 编辑器会出现:
-
Ctrl+V 无反应
-
右键菜单可点但无法粘贴
-
可以选中文本,但无法粘贴
-
C++ 编辑器完全正常(因为它不是 Qt 实现的)
解决方案:
✔ 切换到英文输入法
按键:
Shift + ctrl
切换成 ENG 美式键盘 再尝试粘贴。
✔ 重启输入法
直接在任务栏关闭中文输入法 → 重新打开。
✔ 关闭输入法全局快捷键
微软输入法:设置 → 语言选项 → 键盘 → 输入法快捷键 → 关闭全局快捷键
2. QML 插件线程崩溃导致粘贴失效(CLion Bug)
JetBrains 的 QML 支持是插件形式提供的。
当 QML 编辑器内部发生崩溃时:
-
语法高亮还在
-
可以正常输入
-
但是粘贴、撤销、自动缩进等操作全部失效
这是 CLion 官方 issue 中非常常见的问题。
解决方案:
✔ 重启 CLion(高概率修复)
直接关闭 → 重开。
✔ 重新加载 QML 插件
CLion → Settings → Plugins → Installed
搜索:QML 或 Qt QML
关闭(Disable)→ 应用 → 重启
再启用(Enable)→ 重启
多次出现的用户建议直接重装插件。
3. 系统剪贴板服务异常(Qt QPA 报错)
如果你在 CLion 的日志中看到类似:
qt.qpa.mime: Retrying to obtain clipboard.
那么问题基本确定:
Qt 无法从系统剪贴板读取数据,导致 QML 粘贴失效。
而 JetBrains 自家的编辑器(C++ 区域)不依赖 Qt,所以仍然正常。
解决方案(Windows)
✔ 重启系统剪贴板输入法服务
Win + R → 输入:
ctfmon.exe
按回车。
这是 Windows 的语言输入系统服务。Qt 读取剪贴板依赖它。
✔ 完全重启电脑(必恢复)
如果服务崩了,重启即可。
4. QML 文件被 CLion 错误锁定(只读问题)
有时 CLion 会错误地将 QML 文件标记成 Virtual File System 的只读状态。
表现为:
-
能写字
-
不能粘贴
-
没有报错
-
C++ 文件正常
检查方法:
看窗口右上角是否有黄色条提示:
File is read-only
或左下角是否出现锁标志 🔒。
解决方法:
-
右键文件 → Make File Writable
-
关闭 CMake 的 “Auto-Reload” 功能
(有时 CLion 自动刷新 CMake 时会短暂锁定文件)
5. 引擎问题
上述操作还是没办法最后再切换一下Clion的引擎

即可恢复粘贴的操作
5157

被折叠的 条评论
为什么被折叠?



