Відповідь:
import tkinter as tk
def disable_and_move(event):
# перевіряємо, чи відбулась зміна у полі введення
if entry.get() != original_text:
# якщо змінили, то робимо поле недоступним і переміщуємо вправо
entry.config(state='disabled')
entry.place(x=entry.winfo_x() + 50, y=entry.winfo_y())
else:
# якщо не змінили, то просто змінюємо колір на сірий
entry.config(bg='gray')
# створюємо вікно
root = tk.Tk()
root.geometry('300x200')
# створюємо поле введення та зберігаємо в ньому початковий текст
original_text = 'Введіть текст...'
entry = tk.Entry(root)
entry.insert(0, original_text)
entry.pack()
# прив'язуємо обробник події на зміну тексту у полі введення
entry.bind('<KeyRelease>', disable_and_move)
root.mainloop()
Пояснення:
Copyright © 2024 SCHOLAR.TIPS - All rights reserved.
Answers & Comments
Відповідь:
import tkinter as tk
def disable_and_move(event):
# перевіряємо, чи відбулась зміна у полі введення
if entry.get() != original_text:
# якщо змінили, то робимо поле недоступним і переміщуємо вправо
entry.config(state='disabled')
entry.place(x=entry.winfo_x() + 50, y=entry.winfo_y())
else:
# якщо не змінили, то просто змінюємо колір на сірий
entry.config(bg='gray')
# створюємо вікно
root = tk.Tk()
root.geometry('300x200')
# створюємо поле введення та зберігаємо в ньому початковий текст
original_text = 'Введіть текст...'
entry = tk.Entry(root)
entry.insert(0, original_text)
entry.pack()
# прив'язуємо обробник події на зміну тексту у полі введення
entry.bind('<KeyRelease>', disable_and_move)
root.mainloop()
Пояснення: