我想在子类QPlainTextEdit中只读取特定的行。
我知道我可以覆盖keyPressed事件并在行上忽略它只读,但是我需要过滤非编辑键的键事件(例如箭头导航键)。此外,这不会考虑粘贴在该行上的文本。
是否有内置支持或更好的方法?
答案 0 :(得分:1)
如果你跟踪"只读"的开头和结尾?部分,当光标或选区的一部分进入只读范围时,您只需更改整个文档的只读属性。
http://doc.qt.io/qt-5/qplaintextedit.html#readOnly-prop
我会使用语法高亮显示器使只读部分变成不同的颜色,这样对最终用户来说更有意义。
http://doc.qt.io/qt-5/qtwidgets-richtext-syntaxhighlighter-example.html
希望有所帮助。