resizeImage() funksiyasi imageBuffer o`zgaruvchisidan tasvirga oida ma’lumotlarni osonlik bilan nusxalab oladi va ushbu tasvir oynada ochilgandan so`ng, uning chegaralarini oyna chegaralariga moshlashtirib turadi. Ochgan tasvirli faylimiz komyuterimiz ekrani o`lchamlaridan katta bo`lib qolishi mumkin va uning chetlari qirqib ko`rsatilishi istamaymiz.
ImageBuffer o`zgaruvchisini ishlatishimizning sababi shundaki, bu orqali asl rasmli faylga oid ma’lumotlarni saqlab turishimiz va rasm sifatiga ta’sir qilmasdan, unga bir necha marta o`zgartirish kiritishimiz mumkin.
So`ngi bosqichda, resizeImage() funksiyasini paintEvent() funksiyasi tarkibida ham chaqirishimizga to`g`ri keladi. Qachonki, asosiy oynaning chegaraviy o`lchamlari o`zgarganida yoki u pastga tushirilgan holatida, quyida ko`rsatilgani kabi, paintEvent() funksiyasi va shuningdek, resizeImage() funksiyasi ham chaqiriladi:
void MainWindow::paintEvent(QPaintEvent *event)
{
resizeImage();
}
Bo`ldi. Agar biz hozir loyihani qurib, uni ishga tushirsak, quyidagiga o`xshagan rasmni ko`rishimiz mumkin bo`ladi:
15.3. Audio fayllarni ochishni dasturlash
Keling, endi navbatdagi loyihaga o`tamiz! Bu loyihada audio fayllarni ochuvchi dastur yaratamiz. Quyidagi qadamlarni ko`rib chiqamiz:
Yuqoridagi loyihamizdagi kabi, dastlab Qt da yangi loyiha hosil qilib olamiz.
“*.pro” kengaytmali loyiha faylini ochib, unga multimedia modulini qo`shamiz:
QT += core gui multimedia
Endi mainwindow.ui oynasini ochib, unda quyidagicha tuzilmaga ega foydalanuvchi interfeysini shakllantiramiz:
Ko`rib turganimizdek, tugmalarning birortasi tasvirli belgiga ega emas. Tasvirli belgiga ega bo`lmagan tugmalarning nima ish bajarishini bilib olishda muammolar yuzaga keladi.
Tugmalarga tasvirli belgilar o`rnatish uchun, File | New File or Project ga o`tamiz va Qt kategoriyasidan Qt Resource File ni tanlaymiz. Keyin icons deb nomlangan prefix yaratamiz va unga kerakli tasvirli belgilarni qo`shamiz:
Shundan so`ng, har bir tugmaning xususiyatlar paneliga kirib, ularga mos ravishda tsvirli belgilarni biriktirib chiqamiz:
Tugmalarga va labellarga tasvirli belgilarni biriktirib chiqqanimizdan so`ng, foydalanuvchi interfeysi yaxshiroq ko`rinish oladi:
Biz foydalanuvchi interfeysi bilan bog`liq barcha ishlarni qilib bo`ldik. Endi kod yozish qismiga o`tamiz.
Audio fayllarni ochuvchi C++ kodni yozish quyidagi qadamlarni talab etadi:
Birinchisi va eng muhimi – mainwindow.h ni ochamiz va unga quyidagi kutubxona fayllarini qo`shamiz:
#include
Do'stlaringiz bilan baham: |