0

如何更改 QTextCursor 的可选字符,例如添加点?例如在 QPlainTextEdit 节中输入“MyClass”

tc = self.textCursor()
tc.select(QtGui.QTextCursor.WordUnderCursor)
return tc.selectedText()

将返回“MyClass”,但输入“MyClass”。将返回一个空的 Qstring!问题仍然存在,输入“MyClass.myMeth”只会返回“myMeth”,但我需要“MyClass.myMeth”:/ 谢谢

4

1 回答 1

1

好的,我通过以下方式替换对 WordUnderCursor 的调用来找到解决方案:

def textUnderCursor(self):
        tc = self.textCursor()
        isStartOfWord = False
        if tc.atStart() or (tc.positionInBlock() == 0):
            isStartOfWord = True
        while not isStartOfWord:
            tc.movePosition(QtGui.QTextCursor.PreviousCharacter, QtGui.QTextCursor.KeepAnchor)
            if tc.atStart() or (tc.positionInBlock() == 0):
                isStartOfWord = True
            elif QtCore.QChar(tc.selectedText()[0]).isSpace():
                isStartOfWord = True
        return tc.selectedText().trimmed()
于 2015-05-24T06:45:26.777 回答