gpt4 book ai didi

c++ - QScintilla 如何连续获取文本编辑小部件中的光标位置?

转载 作者:太空狗 更新时间:2023-10-29 21:10:32 25 4
gpt4 key购买 nike

我正在使用 C++ 开发源代码编辑器,使用 Qt5 和 QScintilla 作为框架。在这个项目中,我想连续显示文本光标的行和列(光标位置),所以我需要一个在移动文本光标时发出的信号。根据 QScintilla 文档,每当光标移动时,cursorPositionChanged(int line, int index) 都会发出想要的信号,所以我想这一定是我需要的方法吗?这是我到目前为止所做的:

// notify if cursor position changed
connect(textEdit, SIGNAL(cursorPositionChanged(int line, int index)), this, SLOT(showCurrendCursorPosition()));

我的代码编译成功,编辑器窗口按需要显示,但不幸的是,我收到了警告:

QObject::connect: No such signal QsciScintilla::cursorPositionChanged(int line, int index)

谁能给我提供一个 QScintilla C++ 或 Python 示例来展示如何连续获取和显示当前光标位置?

完整的源代码托管在这里: https://github.com/mbergmann-sh/qAmigaED

感谢任何提示!

最佳答案

这个问题是由在运行时验证的连接的旧语法引起的,此外,旧语法还有另一个必须匹配签名的问题。在您的情况下,解决方案是使用没有您提到的问题的新连接语法。

connect(textEdit, &QTextEdit::cursorPositionChanged, this, &MainWindow::showCurrendCursorPosition);

更多信息您可以查看:

关于c++ - QScintilla 如何连续获取文本编辑小部件中的光标位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53799650/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com