OnMouseDown hodisasi sichqoncha tugmasini bosganda ro'y beradi . OnMouseUp hodisasi sichqoncha tugmasi qo'yib yuborganda
ro'y beradi . Sichqoncha tugmasi bosilganda qo'yidagi hodisalar ketma - ketligi ro'y beradi :
OnMouseDown -> OnClick (chap tugma uchun) -> OnMouseUp
Agar komponenta sohasiga sichqoncha tugmasini ikkilangan bosishi amalga oshirilsa, OnDblClick hodisasi ro'y beradi . Bu holdagi hodisalar ketma - ketligi qo'yidagicha bo'ladi :
OnMouseDown -> OnClick -> OnMouseUp -> OnDblClick -> OnMouseDown ->OnMouseUp
Delphi yuqorida qayd qilingan holatlarda qo'lda yuzaga keltirishga imkon beradi .
Masalan : Button2.Click operatori Button2 tugmasi bosilishini immitatsiya qiladi.
OnMouseMove hodisasi vizual komponenta ustida sichqoncha ko'rsatgichini harakat qilishi davomida uzluksiz ravishda yuzaga kelib turadi . Bu hodisaning turi quyidagicha :
Type TMouseEvent=procedure(Sender:TObject; Shift :TShiftState; x,y:integer) of Object ;
Bu yerda Sender - sichqoncha ko'rsatgichi qaysi boshqaruv elementi ustida ekanligi , X va Y sichqoncha ko'rsatgichining Sender boshqaruv elementi koordinata tizimidagi koordinatalarini ko'rsatadi . Shift parametri , va tugmalarining holatini bildiradi . Bu parametr quyidagi qiymatlarning kombinatsiyasini olishi mumkin :
SsShift - tugmasi bosilgan
SsAlt - < Alt > tugmasi bosilgan
SsCtrl - < Ctrl > tugmasi bosilgan
SsLeft - sichqonchaning chap tugmasi bosilgan
SsMiddle - sichqonchaning o'rta tugmasi bosilgan
SsDouble - ikkilangan bosish amalga oshirilgan
Masalan , harakat davomida < Shift > va < Alt > tugmalari bosilgan bo'lsa Shift parametri [SsShift, SsAlt ] qiymati qabul qiladi . hech qaysi tugma bosilmagan bo'lsa Shift parametri [ ] (bo'sh to'plam ) qiymatini qabul qiladi .
Masalan . Sichqoncha ko'rsatgichining koordinatalarini chop qilish
Procedure TForm1.FormMouseMove( );
Begin
Form1.Caption:='Sichqoncha ko'rsatgichi koordinatalari :' + IntToStr(x) + ' va ' + IntToStr(y) ) ;
end;
Sichqoncha ko'rsatgichini forma ichida xarakatlantirish uning koordinatalari forma sarloxasida ko'rsatib turiladi .
OnKeyPress va OnKeyDown hodisalari klaviatura tugmasini bosganda yuzaga keladi.
OnKeyUp hodisasi klaviatura tugmasini qo'yib yuborganda yuzaga keladi .
Klaviatura tugmasini bosganda hodisalar quyidagi ketma - ketlikda ro'y beradi: OnKeyDown, OnKeyPress, OnKeyUp
Klaviaturani bosib turganda uzluksiz ravishda onKeyDown hodisasi , tugma quyib yuborilgandan keyin OnKeyUp hodisasi ro'y beradi.
OnKeyPress hodisasi TKeyPressEvent turida bo'lib, u quyidagi e'longa ega:
Type TKeyPressEvent = procedure (Sender : TObject ; var Key:char) of Object ;
Bu yerda key parametri bosilgan tugmasi mos keluvchi belgining ASCII kodi .
OnKeyPress hodisasini qayta ishlashga misol
Procedure TForm1.EditKeyPress( Sender : TObject ; var Key:Char);
Begin
if key='!' key=#0;
End;
Bu yerda Edit1 taxriridagi matnni qayta ishlashda foydalanuvchiga '!' belgisini ishlatishni man qiladi .
Do'stlaringiz bilan baham: |