Практична робота №10 «Обробники подій, пов’язаних з елементами керування. Властивості вікна та використання вікон повідомлень»

Про матеріал
Практична робота №10 «Обробники подій, пов’язаних з елементами керування. Властивості вікна та використання вікон повідомлень в середовищі програмування Python» Мета: закріпити на практиці навичків створення проєктів із обробниками подій, пов’язаних з елементами керування в середовищі програмування Python. Властивості вікна та використання вікон повідомлень. Для допомоги вчителю в роботі є програмні коди завдань та скріншоти.
Перегляд файлу

8 клас

 

Практична робота №10 «Обробники подій, пов’язаних з елементами керування. Властивості вікна та використання вікон повідомлень» 

Інструктаж з БЖД

Мета: закріпити  на практиці навичків створення  проєктів  із обробниками подій, пов’язаних з елементами керування. Властивості вікна та використання вікон повідомлень.

        Python IDLE. Скачати  можна безкоштовно на сайті www.python.org

 

 

Виконайте завдання:

1.Обробники подій, пов’язані з елементами  керування

повторити параграф 53 с.220-225 підручник Казанцева https://drive.google.com/file/d/1GtlzEx3NSRT7f6JC3jSIJitdB5Jjz-MJ/view?usp=drive_web&authuser=0

Завдання

Завдання. У вікні розташуйте 4 кнопки, що відповідають порам року Зима, Весна, Літо та Осінь. Ліворуч від кнопок розташуйте об’єкт напис сірого кольору з увігнутим рельєфом. При натисканні на відповідну кнопку в об’єкті напис мають з’являтися назви місяців, що відповідають натисненій порі року.

 

 

Програмний код

from tkinter import*

 

def winter_click():

    Lbl['text'] = "Грудень\nСічень\nЛютий"

def spring_click():

    Lbl['text'] = "Березень\nКвітень\nТравень"

def summer_click():

    Lbl['text'] = "Червень\nЛипень\nСерпень"

def autumn_click():

    Lbl['text'] = "Вересень\nЖовтень\nЛистопад"

 

#створення вікна

Window=Tk()

Window.title("Пори року")

Window.geometry("300x250")

 

 

#кнопки

winter = Button(text="Зима",font=16,bg="#FFFFFF",command=winter_click)

winter.place(x=20, y=20, width=100)

spring = Button(text="Весна",font=16,bg="#FFA500",command=spring_click)

spring.place(x=20, y=70, width=100)

summer = Button(text="Літо",font=16,bg="#00FFFF",command=summer_click)

summer.place(x=20, y=120, width=100)

autumn = Button(text="Осінь",font=16,bg="#00FF7F",command=autumn_click)

autumn.place(x=20, y=170, width=100)

 

#напис

Lbl= Label(text="",font=16,bg="#AAAAAA",relief=SUNKEN)

Lbl.place(x=140, y=10, width=100, height=200)

 

mainloop()

 

 

 

 

 

2.Уведення даних

повторити параграф 54 с.226-232 підручник Казанцева https://drive.google.com/file/d/1GtlzEx3NSRT7f6JC3jSIJitdB5Jjz-MJ/view?usp=drive_web&authuser=0

Завдання. Користувач має ввести у текстовому полі, скільки йому років. Після введення числа та натиснення кнопки ОК у вікні консолі має з’явитися повідомлення у форматі «Тобі 12 років», де 12 — число, введене користувачем.

 

Програмний код

 

from tkinter import*

 

def btn_click():

    x=int(Ent.get())

    print("Тобі",Ent.get(),"років.")

    L2['text']="Тобі",Ent.get()," рік."

    if x%10==1 and x%100!=11:

        L2['text']="Тобі",Ent.get()," рік."

    elif (x%10==2 or x%10==3 or x%10==4) and x%100!=12 and x%100!=13 and x%100!=14:

        L2['text']="Тобі",Ent.get()," роки."

    else:

        L2['text']="Тобі",Ent.get()," років."

 

 

#створення графічного вікна#

Window=Tk()

Window.title("Скільки років")

Window.geometry("400x300")

 

#напис#

L1=Label(text="Скільки тобі років?")

L1.place(x=20,y=20)

 

#текстове поле#

Ent=Entry()

Ent.place(x=20,y=40, width=80)

 

#Кнопка#

Btn=Button(text="ОК", command=btn_click)

Btn.place(x=20,y=70)

L2=Label(text="")

L2.place(x=20, y=110)

 

mainloop()

 

 

 

 

 

 

 

3.Використання вікон повідомлень

повторити параграф 55 с.232-237 підручник Казанцева https://drive.google.com/file/d/1GtlzEx3NSRT7f6JC3jSIJitdB5Jjz-MJ/view?usp=drive_web&authuser=0

Завдання

Створити тренажер виконання дії додавання з двоцифровими числами. У вікні випадковим чином має з’являтися приклад, відповідь на який необхідно ввести у текстове поле. Після натискання кнопки Перевірити має з’явитися повідомлення про правильність виконання прикладу. Кнопка Наступний приклад має вивести інший при-

клад. Завдання, що містять математичні вирази, мають генеруватися випадковим чином. Також у написах вивести номер прикладу, кількість правильних відповідей та кількість помилок.

 

 

 

 

Програмний код

from tkinter import*

from tkinter.messagebox import*

from random import* #1.додаємо модуль випадкових чисел після створення вікна#

 

def btn1_click(): #4. обробник події кнопки Перевірити#

#10 вносимо зміни для кнопки перевірити, статистика правильних і неправильних дій#

    global k_err, k_ok

    if Ent.get()==str(a+b):

        answer = showinfo("Вітання!", "Правильно!")#інформаційне вікно повідомлення#

#11. Вносимо для к кількість правильних відповідей#

        k_ok=k_ok+1

        Lbl_k_ok['text']="Кількість правильних відповідей "+str(k_ok)

       

    else:

        answer=showerror("Помилка!", "Неправильно! Спробуй ще раз!")

#12. Вносимо для к кількість помилок#

        k_err=k_err+1

        Lbl_k_err['text']="Кількість помилок "+str(k_err)

 

#6.Обробник події кнопки Наступний приклад #

 

def btn2_click():

    global a,b,k

    a=randint(10,99)

    b=randint(10,99)

    Lbl=Label(text=str(a)+"+"+str(b)+"=")

    Lbl.place(x="20", y="20")

    Ent.delete(0,END)#очищення поля#

   

#9.Оголошення змінної k #

#формування та виведення значення k

    k=k+1  #збільшення k на 1 після виведення нового прикладу

    Lb1_k ['text']="Кількість прикладів "+str(k)

 

 

#створення графічного вікна#

Window=Tk()

Window.title("Тренажер")

Window.geometry("250x180")

 

#8.Створення статистики обчислень написи внизу вікна#

k=1

k_err=0

k_ok=0

 

#2.створення випадкових змінних #

a=randint(10,99)

b=randint(10,99)

 

 

#3.Вносимо зміни в текстовому написі#

#текстовий напис#

Lbl=Label(text=str(a)+"+"+str(b)+"=")

Lbl.place(x=20,y=20)

 

#текстове поле#

Ent=Entry()

Ent.place(x=80,y=20)

 

#5.Вносuмо команду для кнопок command #

#Кнопка#

Btn1=Button(text="Перевірити",command=btn1_click)

Btn1.place(x=20,y=60)

 

#7.Вносuмо команду для кнопок command #

Btn2=Button(text="Наступний приклад", command=btn2_click)

Btn2.place(x=100,y=60)

 

#текстові написи#

Lb1_k=Label(text="Кількість прикладів1")

Lb1_k.place(x=20,y=100)

Lbl_k_ok=Label(text="Кількість правильних відповідей 0")

Lbl_k_ok.place(x=20, y=120)

Lbl_k_err=Label(text="Кількість помилок 0")

Lbl_k_err.place(x=20, y=140)

 

 

 

 

 

 

 

 

docx
Додано
16 травня 2023
Переглядів
704
Оцінка розробки
Відгуки відсутні
Безкоштовний сертифікат
про публікацію авторської розробки
Щоб отримати, додайте розробку

Додати розробку