Мне нужно нарезать 2 отдельные строки в соответствии с положением курсора в текстовом вводе. И это то, что я пробовал. (text_box - это свойство textinput.)
text_box = ObjectProperty()
x,y = self.text_box.cursor
Но затем я обнаружил, что положение x, y нестабильно и продолжает меняться всякий раз, когда я нажимаю на другое положение.
Могу ли я найти стабильную информацию о положении курсора от Kivy?
Кроме того, есть ли такая вещь, как on_click в textinput вместо on_focus? (так что я могу проверять положение курсора всякий раз, когда нажимаю на ввод текста.)
@Take_Care_ cursor возвращает столбец и строку. Итак, если я использую cursor_col и cursor_row, это одно и то же.
Ну text_box.cursor
не работал в on_focus
но в on_touch_up
работает нормально.
Я не уверен, почему это так. Но, по крайней мере, теперь я могу заставить его работать.
хммм, как я вижу в документах, TextInput использует две разные системы координат: (x, y) - координаты в пикселях, в основном используется для рендеринга на экране. (row, col) - индекс курсора в символах / строках, используемый для выделения и перемещения курсора. Значит, использование строк и столбцов не решит вашу проблему?