|
Pythonda Tkinter modulini 2 usulda import qilish mumkin
| bet | 2/2 | Sana | 16.05.2024 | Hajmi | 0,92 Mb. | | #238042 | Turi | Referat |
Bog'liq Isoqova Dilnurageometriya funksiyasidan foydalanib, biz oynaning standart hajmini quyidagicha sozlashimiz mumkin:Ilova oynasining hajmini sozlash
window.geometry('350x150')
Yuqoridagi satr oynani kengligi 350 piksel va balandligi 150 pikselgacha o'rnatadi.
from tkinter import *
4. Button vidjetini qo'shishOynaga button qo'shishdan boshlaylik. Button xuddi Labeldagi kabi yaratiladi va oynaga qo'shiladi:
5. Matn rangini va tugma fonini o'zgartirishSiz Button yoki boshqa vidjet matnining rangini fg xususiyatidan foydalanib o'zgartirishingiz mumkin.Bundan tashqari, bg xususiyati yordamida istalgan vidjetning fon rangini o'zgartirishingiz mumkin.
button1 = Button(window, text="Natija", bg="yellow", fg="blue"))
Agar siz tugmani bosmoqchi bo'lsangiz, hech narsa bo'lmaydi, chunki tugmani bosish hodisasi hali yozilmagan.
Tugmani bosing
Birinchidan, biz tugma bosilganda bajarilishi kerak bo'lgan funktsiyani yozamiz:
6. Entry klassi yordamida ma'lumot olish
Oldingi Python GUI misollarida biz oddiy vidjetlarni qanday qo'shishni ko'rdik, endi Tkinter Entry klassi (Tkinter matn maydoni) yordamida foydalanuvchi ma'lumotlarini olishga harakat qilaylik.
Siz Tkinter Entry sinfidan foydalanib matn qutisini yaratishingiz mumkin va keyin uni grid funksiyasi yordamida oynaga qo'shishingiz mumkin.
Endi, agar siz tugmani bosgan bo'lsangiz, u xuddi o'sha eski xabarni ko'rsatadi, lekin Entry vidjetida kiritilgan matnni ko'rsatish haqida nima deyish mumkin?
Birinchidan, get funksiyasidan foydalanib, kirish matnini olishingiz mumkin. Tanlangan funksiyaning kodini quyidagicha yozishimiz mumkin:
def tugma():
res = "Assalomu alaykum {}".format(txt.get())
label1.configure(text=res)
Agar siz tugmani bosgan bo'lsangiz, "vidjet" da kiritilgan matn bilan birga "Salom" yozuvi paydo bo'ladi. Mana to'liq kod:
Har safar biz kodni ishga tushirganimizda, matn kiritishga fokus qo'yish uchun kirish vidjetini bosishimiz kerak, lekin avtomatik fokus haqida nima deyish mumkin?
7. Kirish vidjetining fokusini sozlash
Bu erda hamma narsa juda oddiy, chunki biz faqat fokus funktsiyasini chaqirishimiz kerak:
txt.focus ()
Kodni ishga tushirganingizda, kirish vidjetining diqqat markazida ekanligini ko'rasiz, bu esa matnni darhol yozishga imkon beradi.
Kirish vidjetini o'chirish
Kirish vidjetini o'chirish uchun vidjet xususiyatini o'chiring:
txt = Entry(window,width=10, state='disabled')
Endi siz hech qanday matn kirita olmaysiz.
8. Combobox vidjetini qo'shish
Ochiladigan qutiga vidjet qo'shish uchun ttk dan Combobox sinfidan quyidagicha foydalaning:
from tkinter.ttk import Combobox combo = Combobox(window)
Keyin o'z qiymatlaringizni ochiladigan maydonga qo'shing.
9. Checkbutton tugmachasi vidjetini qo'shish
Tekshirish tugmachalari vidjetini yaratish uchun Checkbutton sinfidan foydalaning:
from tkinter.ttk import Checkbutton chk = Checkbutton(window, text='Tanlash')
Shu bilan bir qatorda, standart qiymatni Tekshirish tugmasidagi var parametriga o'tkazib belgilashingiz mumkin:
10. Chekbutton holatini sozlash
Bu erda biz BooleanVar tipidagi o'zgarmaydiganni yaratamiz, bu standart Python o'zgarmaydigan emas, bu Tkinter o'zgaruvchisi, keyin yuqoridagi misolda tasdiq qutisi holatini true qilib belgilash uchun uni Checkbutton sinfiga o'tkazamiz.
Siz tasdiqlash qutisi belgilanmagan bo'lishi uchun BooleanVar -ni false qiymatiga qo'yishingiz mumkin.
Bundan tashqari, BooleanVar o'rniga IntVar dan foydalaning va qiymatlarni 0 va 1 ga o'rnating.
chk_state = IntVar()chk_state.set(0) # Falsechk_state.set(1) # True
Bu misollar BooleanVar bilan bir xil natijani beradi.
RadioButton vidjetlarini qo'shish
Radio tugmalarini qo'shish uchun RadioButton sinfidan foydalaning:
rad1 = Radiobutton(window,text='Salom', value=1)
11. Radio tugmachasining qiymatini olish
Tanlangan radio tugmani yoki uning qiymatini olish uchun parametrni o'zgaruvchiga o'tkazib, uning qiymatini olish mumkin.
Har safar radio tugmachasini tanlaganingizda, o'zgaruvchining qiymati tugma qiymatiga o'zgartiriladi.
|
| |