TKinter - виджет открытого текста - PullRequest
0 голосов
/ 29 мая 2018

Я ввожу случайное число от 1 до 25 в текстовое поле при нажатии кнопки.Каждый раз, когда я нажимаю кнопку, я хочу, чтобы текстовое поле было очищено перед сохранением нового номера - но ввод self.outputbox.delete("1.0") в команду кнопки удаляет только первый символ.я попытался заменить 1.0 чем-то очевидным, например 2.0, но он никогда не удалял оба символа.В настоящее время я делаю очень грязное решение, просто дважды вызывая self.outputbox.delete("1.0") - но я хочу знать, как удалить все содержимое текстового поля.

эточасть:

   def change_button_color(self):
       randomcolor = self.get_random_color()
       randombutton = self.random_button()
       for z in range(0,1):
          self.buttons['button{}'.format(randombutton)].config(bg=randomcolor)
          for i in range(0,40):
              self.outputbox.delete("1.0")
          self.outputbox.insert("1.0","Button" + str(randombutton) + " " + "has the color" + " " + randomcolor)

, как вы можете видеть, в настоящее время у меня есть довольно грязное решение, чтобы снять флажок

1 Ответ

0 голосов
/ 29 мая 2018

Сделайте это

self.outputbox.delete("1.0", self.END)

, он очистит весь текст widget

И если вы импортировали tkinter as tk, сделайте это

self.outputbox.delete("1.0", self.tk.END)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...