Текстовый тег при добавлении 2 пробелов в начале каждой строки - PullRequest
0 голосов
/ 19 апреля 2019

У меня есть полоса прокрутки в текстовом виджете, поэтому я создал текстовый тег для вставки 2 пробелов в конце каждой строки, чтобы слова из одной буквы не заканчивались за полосой прокрутки, я сделал insert lineend в качестве индекса для " space_tag ", но он также добавляет 2 дополнительных пробела в первых строках экземпляров текстовых виджетов, может кто-нибудь сказать мне, почему это происходит

Результаты будут такими же, если я использую только self.t.insert('insert lineend', ' ') вместо тега

    self.t.bind("<Return>", self.save_task)
    self.t.bind("<Double-Button-1>", self.strike_line)

    self.t.tag_add('space_tag', 'insert lineend')
    self.t.insert('insert lineend', '  ',  'space_tag')

1 Ответ

0 голосов
/ 19 апреля 2019

Я не совсем понимаю вашу проблему без остального кода, но вставка в виджет Текст может быть сделана как:

1

self.t.insert(END, "your text here")
# This adds the text at the end of your current text

2

self.t.insert('1.0', "your text here\n")

Это добавляет ваш текст в начале вашего текущего текста, то есть номер строки 1.0. \n вводит новую строку, поэтому существующий текст перемещается на следующую строку. Вы можете изменить 1.0 и заменить на номер строки, в которую вы хотите вставить текст.

Если вы хотите добавить пробелы после строк, просто вставьте "\n\n". Это добавит две новые строки.

...