14 tajriba ishi
Python tkinter vidjetlari va layoutlari bilan ishlash.
Ishdan maqsad: Python dasturlash tili tarkibida grafiklar chizish va ularni qayta ishlash ko’nikmalarini shakllantirish. Python dasturlash muhitida dastur natijasini chop etish va ma’lumot kiritish bo’yicha amaliy ko’nikmalarni shakllantirish.
Masalaning qo’yilishi: Talaba variant bo’yicha bеrilgan masalani Python dasturlash tilida dasturini tuzishi va kеrakli natija olishi lozim.
Nazariy qism
Grafik ilovadagi asosiy qurilish bloki foydalanuvchi tugmalar, kirtish maydonlari kabi o'zaro ta'sir qiladigan turli xil boshqaruv elementlaridir. Tkinter vidjetlar deb ataladigan turli xil boshqaruv elementlarining boy palitrasiga ega. Ularning asosiylari:
Button: tugma
Label: matnli sarlavha
Entry: bitta qatorli matn maydoni
Text: ko'p qatorli matn maydoni
Checkbutton: Tekshirish tugmasi
Radiobutton: radio tugma yoki tanlanuvchi element
Frame: vidjetlarni guruhlarga ajratuvchi ramka
Listbox: ro’yxat qutisi
Combobox: ochiladigan ro'yxat
Menu: menyu
Scrollbar: O'tkazish paneli
Treeview: daraxt obyekti katalog va fayllar ro’yxatini korish uchun
Scale: matn yorlig'i
Spinbox: elementlar bo'ylab harakatlanish uchun strelkalar bilan qiymatlar ro'yxati
Progressbar: Jarayon paneli matn yorlig’i
Canvas: matn yorlig'i
Notebook: yorliqlar paneli
Tkinter ikki xil vidjetlarni taqdim etadi:
1.To'g'ridan-to'g'ri tkinter paketida joylashgan vidjetlar
2. tkinter.ttk to'plamidagi vidjetlar .
Bir tomondan, ikkala paket ham deyarli bir xil vidjetlarni taqdim etadi, masalan, tugma vidjeti ikkala paketda ham mavjud. Ammo boshqa tomondan, ttk vidjetlarni sozlash uchun, xususan, ularni uslublash uchun biroz ko'proq funksionallikni ta'minlaydi. Va ttk vidjetlari standart vidjetlarga qaraganda biroz zamonaviyroq, deb ishoniladi , shu bilan birga, ttk bilan ishlash biroz qiyinroq. Aniq nimadan foydalanish ishlab chiquvchining ixtiyorida qoladi.
Misol sifatida tugma vidjetidan foydalanib, farqni ko'rib chiqamiz. Birinchidan, umumiy tkinter to'plamidan standart tugma vidjetini ko'rib chiqaylik :
from tkinter import *
root = Tk()
root.title("METANIT.COM")
root.geometry("250x200")
btn = Button(text="Click") # Tugma hosil qilamiz ttk
btn.pack() # Tugmani oynaga joylashtiramiz
root.mainloop()
Endi ttk paketidagi tugma misolini ko'rib chiqamiz :
from tkinter import *
from tkinter import ttk # paketni chaqiramiz ttk
root = Tk()
root.title("METANIT.COM")
root.geometry("250x200")
btn = ttk.Button(text="Click") # Paketdan tugama yaratamiz ttk
btn.pack() # tugamani oynaga joylaymiz.
root.mainloop()
Aslida, biz bir xil sarlavhali bir xil tugmani yaratmoqdamiz, ammo uning ko'rinishi biroz boshqacha bo'ladi:
Canvas chizish uchun ishlatiladi
import tkinter as tk
root = tk.Tk()
canvas = tk.Canvas(root, width=300, height=200)
canvas.pack()
canvas.create_rectangle(50, 50, 150, 150, fill="blue")
root.mainloop()
Topshiriqlar
1. Asosi besh burchak bo‘lgan og‘ma prizma va uning kesimlarini chizish dasturini tuzing.
2. Ekranda televizor tasvirini hosil qilish dasturini tuzing.
3. Ekranda to‘rtburchak va uning ichida joylashgan ochiq konvert tasvirini hosil qilish dasturini tuzing.
4. Ichma-ich joylashagan ellips, aylana, kvadrat va uchburchakni hosil qilish dasturini tuzing.
5. Ekranda stol tasvirini hosil qilish dasturini tuzing.
6. Shar va uning kesimlarini chizish dasturini tuzing.
7.Ekranda konus va silindr tasvirini hosil qilish dasturini tuzing.
8. Stol va uning ustida gul vazasini chizish dasturini tuzing.
9. Ikkita vagondan iborat poyezd tasvirini hosil qilish dasturini tuzing.
10. Yengil avtomabil tasvirini hosil qilish dasturini tuzing.
11. Monitor tasvirini hosil qilish dasturini tuzing.
12. Eshik tasvirini hosil qilish dasturini tuzing
13. Fotoaparat tasvirini hosil qilish dasturini tuzing
14. Telefon tasvirini hosil qilish dasturini tuzing
15. Notebook tasvirini hosil qilish dasturini tuzing
16. IPhone tasvirini hosil qilish dasturini tuzing
|