我想使用 QTextEdit 实现一个代码编辑器。目前我基于 QCodeEditor 实现了断点功能,但我注意到如果断点所在的行之前被插入行的话,我需要处理这个事件并修改当前断点的行号。我想寻求一个比较简单的方案。
当然你有一个更好的基于 QT widgets 的方案也可以告诉我。
注:QsciScintilla 不考虑,它在高分辨率的显示屏下光标错位及其严重,好像还是老早就提及的 Bug,虽然这个功能确实强,但这个 Bug 是硬伤。
来自edyuk
开源项目的qcodeedit2
,是基于 C++ QT4 Widgets 的组件,提供了很好的支持。协议为 GPL,QT5 兼容性还行,QT6 不行,还有点 Bug ,不适配主题,不过不是大问题了。下图是经过我 Bug 修复和 QT5 API 兼容性修改和 CMake 支持的版本效果图:
基于你的需求,使用QTextEdit实现一个代码编辑器是可行的。对于处理插入行对断点行号的影响,以下是一个比较简单的解决方案:
你这也太 AI 了,回答和不回答没啥区别。