2016-12-11 21 views

ответ

1
  1. Создать булевский флаг, который контролирует доступ к записи; установите его на False,
  2. Связать «< Button-1 >» с функцией, которая очищает запись, если она еще не была доступна, и изменяет флаг на True.
+0

Не могли бы вы привести пример – peer

+1

Вы можете прочитать о привязке события к виджетам здесь: http://effbot.org/tkinterbook/tkinter- событий-и-bindings.htm. Вам нужно определить функцию, которая в случае необходимости очищает запись, и привязывает ее к записи. – DyZ

0

Добавлено

def delete_text(event): 
    if default_text: 
    e1.delete(0, END) 
    default_text = False 

default_text = True 
e1.bind("<Button-1>", delete_text) 

Благодаря DYZ и effbot

+0

Это будет _всегда_ удалить текст. Я хотел бы удалить только оригинальный текст по умолчанию. – DyZ

+0

Имеет смысл для меня, но: Это дает мне UnboundLocalError: локальная переменная 'default_text', упомянутая перед назначением, когда я нажимаю на поле ввода и больше не удаляет текст. – peer

+0

К сожалению, просто переместите определение до определения функции. – DyZ

 Смежные вопросы

  • Нет связанных вопросов^_^