Mavzu: Hodimlari oylik maoshini hisoblash dasturi


OnKeyDown va OnKeyUp hodisalari



Download 1,96 Mb.
bet12/13
Sana16.07.2022
Hajmi1,96 Mb.
#810213
1   ...   5   6   7   8   9   10   11   12   13
Bog'liq
.

OnKeyDown va OnKeyUp hodisalari ASCII - kodlarga ega bo'lmagan klaviatura boshqaruv tugmalarini qayta ishlash uchun aniqlangan.
Bu hodisalar TKeyEvent turida:
Type TKeyEvent=procedure(Sender : TObject ; var Key:word ; Shift:TShiftState) of Object ;
Bu hodisalar , , va boshqa tugmalar holatini tahlil qilishda ishlatiladi . OnKeyPress hodisasidan farqli ravishda Key parametri Char turida emas , Balki word turida shu sababli tugmasa mos keluvchi tugmani aniqlash uchun Chr( ) funksiyasini ishlatish mumkin .
Boshqaruv va alfavit-raqam tugmalari bosilgan holatini qayta ishlash.
Procedure TForm1.Edit2KeyDown(Sender:TObject ; var Key:Word ; Shift:TShiftState);
Begin
if (Shift=[SsCtrl])and(chr(Key)='c')then
MessageDlg('''Ctrl-C'' tugmalari bosildi ' , mtconfirmation, [mbOk],0 );
End;
Agar Edit2 komponentasi qiymat kiritish formulasida bo'lsa , < Ctrl> va tugmalari birgalikda bosilsa Confirm dialog darchasi ' Ctrl - C tugmalari bosildi ' xabari bilan ekranda paydo bo'ladi .
Ayrim tugmalar o'ziga xosliklarga ega , masalan tugmasi bosilganda OnKeyPress va OnKeyUp hodisalari yuz bermaydi.
OnEnter hodisasi boshqaruv elementlari fokus olgansda yuz beradi ( sichqoncha yoki tugmasi yordamida)
OnExit hodisasi darcha boshqaruv elementi fokusni yuqotganda yuz beradi .
Boshqaruv elementi fokus olgandagi yoki fokusni yuqotgandagi hodisalarni qayta - ishlash proceduralari:
Procedure TForm1.Edit1.Enter(Sender:TObject);
Begin
Label5.Caption:=(Sender as TControl).Name +'aktivlashdi');
End;
Procedure TForm1.Edit1.Exit(Sender:TObject);
Begin
Label5.Caption:=TEdit(Sender).Name + ' aktiv emas');
End;
Label5 yozuvi sarlohasida Edit1 tahririning aktivligi yoki aktiv emasligi aniqlanadi . Bu yerda Name xossasiga murojaat ikki xil usulda amalga oshirilgan . Birinchi protsedurada Sender parametri oshkormas ravishda TControl turiga olib kelingan bo'lsa ,ikkinchi protsedurada Sender oshkor ravishda TEdit turiga keltirilgan .
Drag - and - Drop ( ko'chirish va qoldirish ) texnalogiyasi foydalanuvchiga turli ob'ektlar ko'chirish imkoniyatini beradi , masalan , bitta ruyhat elementlarini ikkinchisiga ko'chirish . Bunda ikkita boshqaruv elementi ishlatiladi : Manba va qabul qiluvchi
Manba ko'ruvchi obektni o'z ichga olsa, qabul qiluvchiga esa ko'chiriluvchi obektni oluvchi boshqauv elementlari hisoblanadi. Obektlarni ko'chirish bilan qo'yidagi hodisalar bog'langan:
OnStartDrag hodisasi manba tomonidan obektni ko'chirish boshlanganda yuzaga keltiriladi. Hodisani qayta -ishlovchisiga qo'yidagilar beriladi: obekt - manba Sourse (Tobject turida) va ko'chirish amali adresati - DragObjecr (TDragObject turida).
OnDragOver (TDragOverEvenf turida) hodisasi qabul qiluvchi tomonidan ko'chirilayotgan
obekt uning ustida bo'lganda yuzaga keltiriladi. Hodisa qayta ishlovchisiga qo'yidagi parametrlar
uzatiladi: Sender - obekt manba Sender - obekt qabul qiluvchi sichqoncha ko'rsatkichini X va Y
koordinatalari State- ko'chirish holati va ko'chirish amalini tasdiqlovchi Boolean turidagi Accept turidagi . State parametri ko'chiriluvchi obekt qabul qiluvchi sohasiga kirdimi, bu sohada u harakatlanmoqdami, uni bari etgin yoki yo'qligini bildiradi. Uzatilgan parametrlar taxlili Qabul qiluvchi ko'chirish amalini qabul qilish yoki inkor qilish (Accert=False) imkonini beradi.
OnDragdrop (TDragOverEvenf turida) hodisasi qabul qiluvchi tomonidan obekt unga
joylashtirilganda ro'y beradi. Hodisa qayta - ishlovchisiga qo'yidagi ma'lumotlar jo'natiladi; Sourse - joylashuvchi obekt, Sender - Qabul qiluvchi obekt, X va Y - sichqancha ko'rsatkich ikoordinatalari.
OnEndDrag hodisasi manba tomonidan ko'chirish amali tugaganda hosil qilinadi. Hodisa qayta - ishlovchisiga Target - Qabul qilgan obekt, Sender ko'chirilgan obekt va unuig yangi X , Y koordinatalari.
Eslatib utish kerakki, OnDragDrop va OnDragOver hodisalari uchun Sender manba,
OnEndDrag hodisasi uchun Sender - ko'chiriluvchi obekt.
Ko'chirishni amalga oshirish uchun ko'rsatilgan hodisalarning qayta - ishlovchisini ( prosedurasini) yoish kerak. Odayda OnDragDrap va OnDragOver hodisalarini qayta ishlash etarli.
Ko'chiriluvchi obektning DragMode xossasiga dmAvtomatic qiymatini berush zarur . Bunda kuchirish amali avtomatik ravishda amalga oshadi, aks xolda pragrammaviy yo'l bilan Begin Drag metodini chaqirish kerak bo'ladi.
Misol Lavil1 yozuvini formula chegarasida kuchirishi .
// Label1 . yozuvi=DragMode xossasiga dmAvtomatic qiymatini berish kerak .
Procedure TForm1. FormDragOver(SenderSourse: Tobject:X,Y: Integer; State: TDargState: Var Accept:Boolean);
Begin
If Sourse=Lable1 then Accept :=then else Accept:=False;
end;
Procedure TForm1.FormDragDrop(Sender, Sourse:Tobject ; X,Y:Integer);
Begin
Label1.Left:=X ; Label1.top:=Y;
end;
Qo'yidagi misolda kompanentaning tanlangan elementlarini ko'chirishga misol keltirilgan.
Misol. Ro'yxat elementlarini bir ro'yhatdan ikkinchisiga ko'chirish
// ListBox1 ro'yhati= DragMode hossasining qiymati dnAutomatic berish kerak.
Procedure TForm1.ListBox2DragOver(Sender, Sourse: Tobject; X,Y:Integer; State:TDragState; Var Accept:Boolean);
Begin
if Sourse=ListBox1 the Accept:=True else Accept:=False;
end;

Download 1,96 Mb.

Do'stlaringiz bilan baham:
1   ...   5   6   7   8   9   10   11   12   13




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish