Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 启用换行时,如何获取换行符的位置?(PyQt,QTextEdit)_Python_Pyqt_Pyqt4_Word Wrap_Qtextedit - Fatal编程技术网

Python 启用换行时,如何获取换行符的位置?(PyQt,QTextEdit)

Python 启用换行时,如何获取换行符的位置?(PyQt,QTextEdit),python,pyqt,pyqt4,word-wrap,qtextedit,Python,Pyqt,Pyqt4,Word Wrap,Qtextedit,我需要从QTextEdit中获取线的起始位置,以便实现逐线移动函数。处理这个实际的\n字符很简单,但当我启用了换行时,这还不包括在内。QTextEdit如何表示哪些单词位于哪些可视行上,以及我如何访问它?或多或少表示QTextEdit中的一行。即使使用单词换行?我尝试使用textCursor.blockNumber()创建我自己的系统,但这只会增加实际的新行字符。如果启用了换行,并缩小qtextedit的宽度,使单行文本分布在多个可视行上,则当光标在这些行上移动时,块计数不会改变。这对我来说意味

我需要从QTextEdit中获取线的起始位置,以便实现逐线移动函数。处理这个实际的\n字符很简单,但当我启用了换行时,这还不包括在内。QTextEdit如何表示哪些单词位于哪些可视行上,以及我如何访问它?

或多或少表示
QTextEdit
中的一行。即使使用单词换行?我尝试使用textCursor.blockNumber()创建我自己的系统,但这只会增加实际的新行字符。如果启用了换行,并缩小qtextedit的宽度,使单行文本分布在多个可视行上,则当光标在这些行上移动时,块计数不会改变。这对我来说意味着QTextBlock并不对应于可视线,即使它确实对应于\n所描绘的文本线。您建议如何使用QTextBlock进行此操作?您是否查看了块的方法?我没有试过,但这似乎是在逻辑线内获得可视线的唯一方法。是的,这很有效。QTextLayout允许您使用光标位置号访问单个QTextLine实例,QTextLine将为您提供一个int表示其开始位置,另一个int表示其长度(以字符为单位)。这是一条非常有用的线索,谢谢。