我正在尝试将语法完成添加到QTextEdit基本编辑器中,我想支持非字母字符来触发QCompleter弹出窗口。我正在使用QTextCursor :: select来获取当前单词,但它总是过滤掉非字母字符。我需要使用这个选项吗?
这是我用来获取文本的代码:
QTextCursor tc = textCursor();
tc.select(QTextCursor::WordUnderCursor);
QString t = tc.selectedText();
感谢
答案 0 :(得分:0)
单词实际上不包含字母字符。要选择最后一个输入字符:
QTextCursor tc = textCursor();
tc.movePosition ( QTextCursor::Left, QTextCursor::KeepAnchor);
QChar lastChar = tc.selectedText().at(0);
if (!lastChar.isLetterOrNumber())
{
do something;
}
将isLetterOrNumber()替换为您可能检查的任何字符。