|
O‘zbekiston respublikasi oliy ta’lim, fan va innovatsiyalar vazirligi navoiy davlat pedagogika instituti
|
bet | 121/178 | Sana | 13.05.2024 | Hajmi | 14,73 Mb. | | #230019 |
Bog'liq Darslik 01.05.20239. FindDialog tugmasidan foydalanish. FindDialog tugmasi loyihada Найти muloqot oynasidan foydalanish imkoniyatini yaratadi. FindDialog tugmasini loyiha oynasiga joylashtirish uchun Dialogs komponentalar palitrasidan piktogramma belgilanib, loyiha oynasining ustiga kelinadi va sichqoncha tugmasini bosgan holda tanlash lozim bo‘lgan joy ajratiladi. Natijada, FindDialog1 tugmasi hosil bo‘ladi. Mazkur tugmaning qidirish oynasi quyidagi ko‘rinishda namoyon bo‘ladi:
3.3.32-rasm.
FindDialog tugmasining Object Inspector oynasidagi FindText xususiyati qidirilayotgan satrni aniqlaydi.
1-misol. FindDialog tugmasi yordamida Memo maydonidagi satrni qidiruvchi ilova tayyorlash.
FindDialog tugmasi yordamida Memo maydonidagi satrni qidirish uchun loyiha oynasiga Standart komponentalar palitrasidan Button1, Memo1 va Dialogs komponentalar palitrasidan FindDialog1 tugmalari joylashtiriladi. Button1 tugmasining Caption qatoriga “Qidirish” satri, Memo1 tugmasining Name qatoriga “Matn_Sohasi” satrlari kiritiladi:
3.3.33-rasm.
“Qidirish” tugmasining dasturlash maydoniga quyidagi dastur kodi kiritiladi:
{
FindDialog1->FindText = Matn_Sohasi->SelText;
FindDialog1->Execute();
}
3.3.34-rasm.
FindDialog tugmasining Object Inspector oynasini Events bo‘limidagi OnFind qatoriga sichqoncha tugmasi ikki marta bosiladi. Hosil bo‘lgan dasturlash maydoniga quyidagi dastur kodi kiritiladi:
{ int Satr_1, Satr_2, Satr_3;
Satr_2=Matn_Sohasi->SelStart;
if(Matn_Sohasi->SelLength) Satr_2+=Matn_Sohasi->SelLength;
Satr_3 = Matn_Sohasi->Text.Length() - Satr_2;
if (FindDialog1->Options.Contains(frMatchCase))
Satr_1 = Satr_2 + Matn_Sohasi->
Text.SubString(Satr_2+1, Satr_3).Pos(FindDialog1->FindText);
else
Satr_1 = Satr_2 + Matn_Sohasi->Text.SubString(Satr_2+1,
Satr_3).LowerCase().Pos(FindDialog1->FindText.LowerCase());
if (Satr_1 != Satr_2) {
Matn_Sohasi->SetFocus();
Matn_Sohasi->SelStart = Satr_1-1;
Matn_Sohasi->SelLength = FindDialog1->FindText.Length(); }
else ShowMessage (FindDialog1->FindText + " topilmadi");
}
3.3.35-rasm.
Ushbu loyiha oynasi kompyuter xotirasiga saqlanib, F9 tugma yordamida ishchi holatga o‘tkaziladi. Ishchi holatga o‘tkazilgan loyiha oynasida Memo maydoniga biror bir matn kiritiladi va “Qidirish” tugmasi bosiladi. Bundan qidirilayotgan satr kiritilib, “Найти далее” tugmasi bosiladi. Agar maydonda satr mavjud bo‘lsa, satr ajratilib ko‘rsatiladi:
3.3.36-rasm.
Agar satr mavjud bo‘lmasa, quyidagi xabar paydo bo‘ladi:
3.3.37-rasm.
|
| |