Тема 25(8): Елемент керування "Поле"
План вивчення теми:
Програмний об'єкт ПОЛЕ та його характеристики
Д/з: опрацювати:
§6.5
веб-сторінку уроку 25
Поле (англ. Еntry – запис, вхід) – це елемент керування, який використовується в основному для введення даних. Поле можна використовувати також для виведення результатів.
Команда для створення поля в мові Python:
<ім’я поля> = Entry(<набір властивостей та їх значень>)
Властивості ПОЛЯ Еntry
width, bg, fg, font аналогічні до відповідних властивостей напису та кнопки,
властивість height відсутня – висота поля визначається висотою символів у його вмісті.
Для поля можна задавати товщину рамки як значення властивості bd.
Методи (команди) для роботи з ПОЛЕМ Еntry
pack() і place() - розміщення поля у вікні проєкту
<ім’я поля>.insert(<позиція>, <текст>) - команда введення зазначеного тексту у поле із вказаним іменем
<ім’я поля>.delete(0, END) - команда очищення вмісту поля із вказаним іменем
get() - команда копіювання вмісту даного поля у інший вказаний елемент керування (поле, напис, кнопку, заголовок вікна)
<ім’я поля>.focus_set() - команда, яка після запуску проекту призводить до встановлення курсора в середині поля із вказаним іменем - задання фокусу поля
bind() - команда, що пов'язує поле з процедурою – обробником події
Приклад проєкту з процедурою – обробником події Click для поля з назвою entry.
Ця процедура містить команди:
установлення жовтого кольору фону поля;
установлення червоного кольору для символів тексту в полі;
установлення розміру 12 для символів тексту в полі;
виведення тексту, уведеного в полі, у напис;
виведення тексту, уведеного в полі, у вікно повідомлень.
Після запуску проєкту на виконання можна ввести в поле довільний текст (на малюнку у поле введено з клавіатури текст -"Привіт;)"), установити вказівник на полі та клацнути ліву кнопку миші. Результат виконання обробника події Click для поля наведено на малюнку праворуч.
Завдання 1
Спробуте прокоментувати рядки програмного коду для об'єктів з назвами - e2, label2, label3.
rom tkinter import*
from tkinter.messagebox import*
def click (event):
entry['bg']='yellow'
entry['fg']='red'
entry['font']=12
label ['text']=entry.get()
showinfo ('Поле', entry.get())
root=Tk()
root.geometry ('300x250')
label2 = Label(text='поле 1:')
label2.place(x=0, y=20)
entry=Entry()
entry.bind('<1>', click)
entry.pack (pady=20)
entry.focus_set()
label3 = Label(text='поле 2:')
label3.place(x=0, y=50)
e2=Entry(width =30)
e2.insert(0,'Мій текст з програмного коду')
e2.place(x=45, y=50)
label=Label()
label.pack()
Завдання 2
Завдання 3
Створіть проєкт, у якому в результаті настання події Click для поля буде:
встановлено відступ його верхньої межі від верхньої межі вікна 100 пікселів
ширину поля – 15 символів
змінено текст у полі на слово Інформатика.