PyQt4 QTextCursor изменить выбираемый символ

Как я могу изменить выбираемые символы QTextCursor, например, добавить точку? Например, ввод "MyClass" в QPlainTextEdit раздел

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

возвращает "MyClass", но ввод "MyClass". вернет пустую строку Qstring! Проблема продолжается, ввод "MyClass.myMeth" просто возвращает "myMeth", но мне нужно "MyClass.myMeth":/ Спасибо

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()
Другие вопросы по тегам