Borland C++ Builder 6 tizimi
Download 0.69 Mb.
|
mustaqil ish
OnEnter hodisasi boshqaruv elementlari fokus olgansda yuz beradi ( sichqoncha yoki 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 0.69 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling