C++ 在QTextEdit中保留光标位置
我有一个QTextEdit控件。它有一个最大限制(它可以容纳的最大字符数)。为了实现这一点,我将一个插槽连接到textChanged()信号,当字符总数超过允许的最大值时,该信号将删除额外的字符 在处理光标位置时,我遇到了一些问题。有人能告诉我如何在QTextEdit中保持光标位置吗?在您的插槽上: 如果字符数超过最大值: 向QTextEdit查询光标: 将返回值设置为textEdit光标(因为它返回一个副本)。从文件: 返回表示当前可见光标的QTextCursor的副本。请注意,返回的游标上的>更改不会影响QTextEdit的游标;使用setTextCursor()来>更新可见光标 要求光标删除最后一个字符 (编辑)作为代码: 在您的插槽上: 如果字符数超过最大值: 向QTextEdit查询光标: 将返回值设置为textEdit光标(因为它返回一个副本)。从文件: 返回表示当前可见光标的QTextCursor的副本。请注意,返回的游标上的>更改不会影响QTextEdit的游标;使用setTextCursor()来>更新可见光标 要求光标删除最后一个字符 (编辑)作为代码:C++ 在QTextEdit中保留光标位置,c++,qt,qlineedit,C++,Qt,Qlineedit,我有一个QTextEdit控件。它有一个最大限制(它可以容纳的最大字符数)。为了实现这一点,我将一个插槽连接到textChanged()信号,当字符总数超过允许的最大值时,该信号将删除额外的字符 在处理光标位置时,我遇到了一些问题。有人能告诉我如何在QTextEdit中保持光标位置吗?在您的插槽上: 如果字符数超过最大值: 向QTextEdit查询光标: 将返回值设置为textEdit光标(因为它返回一个副本)。从文件: 返回表示当前可见光标的QTextCursor的副本。请注意,返回的游标上
如果数字超出限制或键入了错误字符,我将使用:
ui->textEdit->textCursor().deletePreviousChar();
如果数字超出限制或键入了错误字符,我将使用:
ui->textEdit->textCursor().deletePreviousChar();
写这两行有什么意义?它仅获取并设置光标位置。文档:
返回表示当前可见光标的QTextCursor的副本。请注意,对返回的游标所做的更改不会影响QTextEdit的游标;使用setTextCursor()更新可见光标。
写这两行有什么意义?它仅获取并设置光标位置。文档:返回表示当前可见光标的QTextCursor的副本。请注意,对返回的游标所做的更改不会影响QTextEdit的游标;使用setTextCursor()更新可见光标。