1 of 20

Прапорці

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

Урок 56

8

teach-inf.com.ua

2 of 20

Запитання

Розділ 6 § 6.9

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

8

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

3 of 20

Прапорці та їх властивості

Розділ 6 § 6.9

Розглянемо компонент прапорець.

Прапорці використовують, щоб:

  • вибрати або один варіант з набору можливих
  • або кілька варіантів
  • або не вибрати жодного

Якщо прапорець вибрано, то в нього всередині з'являється позначка

8

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

4 of 20

Прапорці та їх властивості

Розділ 6 § 6.9

Команда для створення прапорця в мові Python має вигляд:

<ім’я прапорця> = Checkbutton(text = '<текст підпису>')

Після розміщення у вікні прапорця, створеного в такий спосіб, він матиме вказаний підпис. Наприклад, після виконання команд:

flag = Checkbutton(text = 'Ваш вибір')

flag.pack()

Буде створено та розміщено у вікні прапорець з іменем flag і підписом Ваш вибір.

8

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

5 of 20

Прапорці та їх властивості

Розділ 6 § 6.9

Властивості прапорця:

width

height

bg

fg

font

Аналогічні до відповідних властивостей:

напису

поля

кнопки

8

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

6 of 20

Прапорці та їх властивості

Розділ 6 § 6.9

Щоб мати можливість дізнаватися під час виконання проєкту стан прапорця (вибраний або невибраний), потрібно пов'язати з ним спеціальну змінну логічного типу. Для створення такої змінної використовують команду виду:

<ім’я змінної> = BooleanVar()

Пов'язують цю змінну з прапорцем під час його створення командою, що має вигляд:

<ім’я прапорця> = Checkbutton (text = '«текст

підпису»',

variable =<ім’я змінної>)

8

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

7 of 20

Прапорці та їх властивості

Розділ 6 § 6.9

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

choice = BooleanVar()

flag = Checkbutton(text = 'Ваш вибір', variable = choice)

flag.pack()

Буде створено та розміщено у вікні прапорець з іменем flag і підписом Ваш вибір, а змінна з іменем choice зберігатиме стан цього прапорця:

True –якщо прапорець вибрано

False – якщо прапорець не вибрано

8

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

8 of 20

Прапорці та їх властивості

Розділ 6 § 6.9

Значення цієї змінної за замовчуванням - False, і після запуску проєкту на виконання позначка прапорця буде відсутня.

Якщо під час виконання проєкту буде вибрано прапорець, то значення змінної стане True.

За повторного вибору прапорця його стан зміниться на протилежний і також зміниться значення змінної.

8

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

9 of 20

Прапорці та їх властивості

Розділ 6 § 6.9

Щоб одразу після запуску проєкту прапорець був у стані вибраний, потрібно використати команду виду:

<ім’я змінної>.set(True)

(англ. set – установити), наприклад:

choice.set(True)

8

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

10 of 20

Прапорці та їх властивості

Розділ 6 § 6.9

Щоб визначити значення цієї змінної під час виконання проєкту, потрібно виконати команду виду:

<ім’я змінної>.get()

наприклад:

choice.get()

Значення цієї змінної можна використовувати в проєктах у команді розгалуження.

8

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

11 of 20

Прапорці та їх властивості

Розділ 6 § 6.9

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

choice1 = BooleanVar()

flag1 = Checkbutton(text = 'Заголовок’,

variable = choice1)

choice2 = BooleanVar()

flag2 = Checkbutton(text = 'Колір’,

variable = choice2)

choice3 = BooleanVar()

flag3 = Checkbutton(text = 'Розміри', variable = choice3)

8

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

12 of 20

Використання прапорців

Розділ 6 § 6.9

Розглянемо, як можна використати прапорці для реалізації розгалуження в проєктах.

Нехай, наприклад, нам потрібно в ході виконання проєкту змінювати значення:

або тільки однієї з властивостей вікна (або заголовок, або колір, або розміри)

або кількох з них

або не змінювати значення жодної з них

8

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

13 of 20

Використання прапорців

Розділ 6 § 6.9

Для цього використаємо кнопку та три прапорці.

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

8

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

14 of 20

Використання прапорців

Розділ 6 § 6.9

Створимо процедуру для опрацювання події Click для кнопки та до її тексту помістимо такі три послідовні (не вкладені одна в одну) команди розгалуження:

if choice1.get():

root.title('Заголовок змінений')

if choice2.get():

root['bg'] = 'red'

if choice3.get():

root.geometry('500x200')

8

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

15 of 20

Використання прапорців

Розділ 6 § 6.9

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

якщо відповідний прапорець вибрано

якщо певний прапорець

не вибрано

то зміняться значення відповідних властивостей вікна

значення відповідних властивостей вікна

не зміняться

8

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

16 of 20

Розгадайте ребус

«Ребуси українською» © rebus1.com

Розділ 6 § 6.9

Прапорець

8

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

17 of 20

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

Розділ 6 § 6.9

  1. Для чого використовують прапорці, а для чого – перемикачі?
  1. Як визначити стан прапорця в проєкті, який розроблено мовою Python?
  1. Як потрібно записувати команди розгалуження, у яких перевіряється, вибрано прапорець чи ні?

8

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

18 of 20

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

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

§ 6.9, ст. 225-228

Розділ 6 § 6.9

8

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

19 of 20

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

Розділ 6 § 6.9

Сторінка

233-234

8

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

20 of 20

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

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

Урок 56

8

teach-inf.com.ua