TKinter. GUI. Навчальний проєкт "Happy Rest: Моя Олександрія". Віджети Text, Button

Про матеріал
У даному проєкті використані віджети Text, Button. Створюються події та їх обробники. У документ додано стартовий код для учня, приклади змін вікна при натисканні на кнопки з текстом. Зображення пам'яток - також кнопки, зв'язані із файлами формату png
Перегляд файлу

https://ukrainaincognita.com/kyivska-oblast/bilotserkivskyi-raion/bila-tserkva/den dropark-oleksandriya

 

Проєкт "Happy Rest: Моя Олександрія". Віджет Text

 

Проєкт "Олександрія" оцінювання:

 

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

 

 

власний проєкт із персонально обробленими картинками -максимум 12

 

 

балів.

 

 

===============================

 

 

Зв’язати картинки з іменами змінних

 

 

Внести зміни, додавши віджети за зразком ( у вкладеному Документі за

 

 

посиланням

 

 

https://docs.google.com/document/d/1stGevUF51acd0N-3hdzFIQTJlnV2GWmCP

 

 

1fQc6cUd0w/edit?usp=sharing)

 

 

На ВСІ кнопки додати події та їх обробники: фрагменти прикладів коду

 

 

також додано до Документа.

 

 

Текстовий опис пам’яток архітектури, що відображатиметься всередині

 

 

віджету Text,  додати самостійно.

 

 

 

Для того, щоб довгі тексти виводилися в декілька рядків,

 

 

використовуємо перемикач /n

 

 

Макет вікна індивідуального проєкту

image

 

image 

 

from tkinter import* from tkinter.ttk import*

   

def b_luna():

    st_text.delete("1.0",END)

    st_text.insert(END, 'КОЛОНАДА ЛУНА\n\nархітектурна памятка XVIII століття \nСвою назву отримала зачудові акустичні властивості. \nПобудована в стилі класицизму.') 

     

window = Tk()

window.title(" Парк Олександрія" ) window.geometry('600x500') window.config(bg='lightblue' )

 

 

l1 = Label(window,

          font=('Times New Roman',16),           fg='brown',

          text = 'Дендропарк Олександрія') l1.place(x=150, y=10)  

 

st_text = Text(window, width=40,  height=6) st_text.place(x=300, y=50)

st_text.insert(END, 'Парк Олександрія-\n\nце перлина ландшафтного\nдизайну та\nпамятка архітектури.') btn1 = Button(window, text="Колонада    Луна", command=b_luna) btn1.place(x=10, y=200)

 

window.mainloop()

image

image 

 

Алгоритм реалізації:

1.     Додати до Розпорядника файлів 5 картинок формату png 

 

Імя файлу в Розпоряднику

Зображення

Імя змінної в програмі

Park.png

карта або загальний вигляд

img0

Luna.png

Колонада Луна

img1

Ruiny.png

Руїни

img2

China.png

Китайський місток

img3

Excurs.png

Екскурсовод

img4

 

2.     Завантажити до програмного середовища  Шаблон стартового коду

from tkinter import* from tkinter.ttk import*

   

def b_luna():

    

    st_text.delete("1.0",END)

    st_text.insert(END, 'КОЛОНАДА ЛУНА\n\nархітектурна памятка XVIII століття \nСвою назву отримала зачудові акустичні властивості. \nПобудована в стилі класицизму.')

    

 

      

window = Tk() window.title(" Парк Олександрія" ) window.geometry('600x500') window.config(bg='lightblue' )

 

img1=PhotoImage(file='Eho.png') img2=PhotoImage(file='Ruiny.png') img0=PhotoImage(file='Park.png')

 

l1 = Label(window,           font=('Times New Roman',16),           fg='brown',

          text = 'Дендропарк Олександрія') l1.place(x=150, y=10)  

 

st_text = Text(window, width=40,  height=6) st_text.place(x=300, y=50)

st_text.insert(END, 'Парк Олександрія-\n\nце перлина ландшафтного\nдизайну та\nпамятка архітектури.')

 

btn1 = Button(window, text="Колонада    Луна", command=b_luna) btn1.place(x=10, y=200)

 

 

window.mainloop()

3.Додати до шаблону рядки коду для реалізації завдання, до якого додано результати виконання:

 

Очікувані Результати змін вікна

Стартове вікно  


image

 

Зміна вікна при натисканні на кнопку з назвами:

image

image

 


 

Додатковіпідказки (фрагменти коду)

Звязування картинок із іменем змінних

#=========================================   img1=PhotoImage(file='Eho.png') img0=PhotoImage(file='Park.png')

#=========================================  

 

Обробник події при натисканні на кнопку ( таких має бути 4)

#=========================================   def b_luna():

       b1 = Button(window,         image=img1,         compound='top' )              b1.place(x=50, y=50)

    

    st_text.delete("1.0",END)

    st_text.insert(END, 'КОЛОНАДА ЛУНА\n\nархітектурна памятка XVIII століття \nСвою назву отримала за чудові акустичні властивості. \nПобудована в стилі класицизму.')

 

 

image 

 

Початкове зображення картинки у стартовому вікні ( одна) b1 = Button(window,         image=img0,         compound='top' )         

b1.place(x=50, y=50)

 

image 

 

Кнопка, що викликає обробник події на клік ( таких 4 в рядок) btn1 = Button(window, text="Колонада    Луна", command=b_luna) btn1.place(x=10, y=300)

image 

РОБОТАЗ ГРАФІКОЮ

================================

Додати до Розпорядника файлів 5 картинок формату png 

Для тих, хто виконує проєкт "Моя Олександрія"

 

посилання на оброблені МНОЮ графічні файли

 

 

https://drive.google.com/drive/folders/10uS7hh5dKG2UgNQb4ibLCWTxgcmYz-9b?usp

 

 

=sharing

 

 

У багаторядковому Текстовому полі має бути НАЗВА та 2 (ДВА) абзаци тексту

 

 

РЕСУРСИ для роботи з графікою:

 

📌 Save Image As PNG - розширення для браузера, що додає завантаження зображень у форматі PNG через контекстне меню.

https://chromewebstore.google.com/detail/save-image-as-png/nkokmeaibnajheohncaamjggkanfb phi

📌Зміна розміру зображень онлайн https://www.iloveimg.com/uk 📌Нейромережа для генерації власного зображення https://raphael.app/        із можливістю збереження результату відразу у форматі png

  

pdf
До підручника
Інформатика 8 клас (Ривкінд Й.Я., Лисенко Т.І., Чернікова Л.А., Шакотько В.В.)
Додано
13 травня
Переглядів
82
Оцінка розробки
Відгуки відсутні
Безкоштовний сертифікат
про публікацію авторської розробки
Щоб отримати, додайте розробку

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