我正在使用“PyQt4”开发桌面应用程序。该应用程序包含一个在 Qscintilla 之上实现的 XML 编辑器。但是,每当我单击通过指示器定义的类似超链接的文本时,我都会遇到问题。调用了“indicatorClicked”事件,但是当我在其中执行“SCI_GOTOLINE”API 时,它会正确地转到所需的行,但不幸的是,由于某种原因,它会从单击的文本位置选择文本直到目标行。对我来说,好像鼠标没有被释放!我也尝试使用“indicatorReleased”事件,但没有成功!你知道如何解决这个问题吗?
这就是我挂钩指示器释放事件的方式:
self.__editor.indicatorReleased.connect(self.__on_indicator_released)
事件处理程序只是将 SCI_GOTOLINE API 调用到某个行号:
def __on_indicator_released(self, line_number, index, keys):
self.__editor.SendScintilla(QsciScintilla.SCI_GOTOLINE, line_number)