1 of 20

Поняття елемента керування. Кнопка

За навчальною програмою 2017 року

Урок 45

8

teach-inf.com.ua

2 of 20

Запитання

Розділ 6 § 6.3

  1. Які властивості вікна ви знаєте? Як змінити значення його властивостей до початку виконання проєкту й під час його виконання?
  1. Які події можуть відбуватися з вікном? У чому полягає кожна з них?
  1. Що таке обробник події? Як його створити? Як його виконати?

8

© Вивчаємо інформатику teach-inf.com.ua

3 of 20

Властивості кнопки

Розділ 6 § 6.3

Одним з компонентів (елементів керування), який можна використати в проєктах, є кнопка.

8

© Вивчаємо інформатику teach-inf.com.ua

4 of 20

Властивості кнопки

Розділ 6 § 6.3

Щоб розмістити кнопку у вікні, потрібно:

  1. Створити новий об'єкт типу Button, пов'язати його зі змінною, яка визначатиме ім'я об'єкта.
  1. Установити значення властивостей кнопки або залишити їх за замовчуванням.
  1. Розмістити створений об'єкт у вікні.

button = Button()

button = Button(text='Змінити', width='15',)

button.pack()

8

© Вивчаємо інформатику teach-inf.com.ua

5 of 20

Властивості кнопки

Розділ 6 § 6.3

Для створення кнопки та пов'язування її зі змінною використовують команду вигляду:

<ім’я_кнопки> = Button()

<ім’я_кнопки> = Button(<Ha6ip властивостей та їх значень»)

буде створено кнопку зі значеннями властивостей висота, ширина і колір, які установлено за замовчуванням, без напису на ній

буде створено кнопку, значення властивостей якої задано в цій команді. У дужках через кому вказують пари

«властивість» = «значення»

8

© Вивчаємо інформатику teach-inf.com.ua

6 of 20

Властивості кнопки

Розділ 6 § 6.3

Для кнопки можуть бути встановлені значення таких властивостей:

текст на кнопці;

text

ширина (кількість символів, які можуть бути розміщені поруч по горизонталі);

width

колір фону (значенням може бути назва кольору англійською);

bg

колір символів тексту;

fg

висота (кількість символів, які можуть бути розміщені поруч по горизонталі);

height

8

© Вивчаємо інформатику teach-inf.com.ua

7 of 20

Властивості кнопки

Розділ 6 § 6.3

(Продовження…) Властивості кнопки

шрифт символів тексту на кнопці (значення може містити назву шрифту, розмір символів і накреслення);

font

стан кнопки (normal - звичайний, disable - недоступний)

state

Наприклад, кнопка з іменем button з текстом Змінити завширшки 15 символів може бути створена командою:

button = Button(text = ‘Змінити’, width = 15)

8

© Вивчаємо інформатику teach-inf.com.ua

8 of 20

Властивості кнопки

Розділ 6 § 6.3

Для розміщення кнопки у вікні можуть бути використані такі методи:

Кнопка автоматично розміщується під рядком заголовка вікна з однаковими відступами від лівої та правої меж вікна. Якщо у вікні розміщується кілька кнопок, то вони будуть відображатися одна під одною без відступів між ними.

раск()

8

© Вивчаємо інформатику teach-inf.com.ua

9 of 20

Властивості кнопки

Розділ 6 § 6.3

Якщо потрібно розмістити кнопку з деяким відступом від рядка заголовка або від попередньої кнопки, то в дужках можна указати цей відступ у пікселях як значення властивості pady.

Наприклад, після виконання команди:

Кнопку буде розміщено з відступом 20 пікселів від верхньої межі вікна або від попередньої кнопки;

8

© Вивчаємо інформатику teach-inf.com.ua

10 of 20

Властивості кнопки

Розділ 6 § 6.3

(Продовження…) Методи кнопки

Верхня ліва вершина кнопки розміщується в точці вікна із заданими координатами х та у.

place(x = «відступ від лівої межі вікна>,

у = «відступ від верхньої межі вікна>)

Наприклад,

50

40

8

© Вивчаємо інформатику teach-inf.com.ua

11 of 20

Властивості кнопки

Розділ 6 § 6.3

Під час виконання проєкту може виникнути потреба зробити кнопку невидимою.

pack_forget()

place_forget()

або

Для цього, залежно від методу розміщення кнопки, можна використати методи:

Щоб зробити кнопку знову видимою, слід застосувати метод:

раск()

рlасе()

або

8

© Вивчаємо інформатику teach-inf.com.ua

12 of 20

Властивості кнопки

Розділ 6 § 6.3

Текст проєкту зі створення та розміщення кнопки вікні та результат його виконання.

8

© Вивчаємо інформатику teach-inf.com.ua

13 of 20

Обробники подій для кнопки

Розділ 6 § 6.3

Пов’язати з кнопкою обробник будь-якої події можна так само, як з вікном, використовуючи метод bind(). Приклад обробника події Click для кнопки, яка містить команду встановлення жовтого кольору вікна.

8

© Вивчаємо інформатику teach-inf.com.ua

14 of 20

Обробники подій для кнопки

Розділ 6 § 6.3

Для кнопки подією за замовчуванням є клацання лівої кнопки миші. Тому пов'язати з кнопкою метод опрацювання саме цієї події можна простіше:

  • під час створення кнопки вказати ім’я відповідного обробника події як значення атрибуту command;
  • обробник події з указаним іменем описати перед створенням кнопки; у заголовку не потрібно вказувати посилання на подію, що відбулася, – event.

button = Button(text=Кнопка', command=click)

8

© Вивчаємо інформатику teach-inf.com.ua

15 of 20

Обробники подій для кнопки

Розділ 6 § 6.3

На малюнку наведено приклад обробника події Click для кнопки – процедури з іменем click(), яка містить команди:

Установлення для кнопки червоного кольору фону

шрифт Arial розміром 14

установлення для кнопки стану недоступна

виведення на кнопці вказаного тексту

8

© Вивчаємо інформатику teach-inf.com.ua

16 of 20

Обробники подій для кнопки

Розділ 6 § 6.3

Приклад обробника події Click

8

© Вивчаємо інформатику teach-inf.com.ua

17 of 20

Дайте відповіді на запитання

  1. Як створити кнопку?

Розділ 6 § 6.3

  1. Які властивості кнопки ви знаєте? Що визначає кожна з них?
  1. Як задати значення властивостей кнопки?
  1. Як розмістити кнопку у вікні?
  1. Якими способами можна призначити для кнопки обробники подій?
  1. Як призначити для кнопки обробник події Click?

8

© Вивчаємо інформатику teach-inf.com.ua

18 of 20

Домашнє завдання

Проаналізувати

§ 6.3, ст. 173-180

Розділ 6 § 6.3

8

© Вивчаємо інформатику teach-inf.com.ua

19 of 20

Працюємо за комп’ютером

Розділ 6 § 6.3

Сторінка

177

8

© Вивчаємо інформатику teach-inf.com.ua

20 of 20

Дякую за увагу!

За навчальною програмою 2017 року

Урок 45

8

teach-inf.com.ua