PDA

View Full Version : آموزش: حساس کردن دکمه ها به OnEnter و OnLeave (سریالایز با رویداد ها)



یوسف زالی
شنبه 31 اردیبهشت 1390, 22:39 عصر
سلام.
دیدم خوبه حیفم اومد نذارمش.

http://www.persianupload.com/1670529 (http://www.persianupload.com/1670529)

در حقیقت یه کلاس مشتق کردم از دکمه و حساسش کردم.
دکمه خودم رو بهش فرستادم و اون رو تیدیل کردم به یک دکمه حساس با تمام رویداد ها و property هاش.
با ترکیبی از سریالایز و GetProp..

کافیه یونیت رو Use کرده و تو OnCreate فرم برای هر دکمه که میخواهید حساس بشه بنویسید:
MakeSense(Button1); // esme dokme shoma

اگر توضیحاتی خواستید در خدمتم.

mbshareat
یک شنبه 01 خرداد 1390, 22:41 عصر
با سلام
کد جالبیه.می تونستین ;(MakeSense(Button1 رو تو OnShow بذارین!
یه سوال دارم:آیا این کد رو میشه برای کار با Image هم کرد؟
نیازی نبود جای دیگه آپلود کنید. می تونستید تو همین سایت ضمیمه کنید.

یوسف زالی
یک شنبه 01 خرداد 1390, 23:05 عصر
سلام.
بله.میشه به هر شی ای خاصیت هایی اضافه کرد.
مثلا اگه بری رو عکس کادر دار بشه.
راستش من خودم این رو تو OnShow میگذارم:


for i := Form1.ControlCount -1 downto 0 do
if Controls[i] is TButton then
MakeSense(Controls[i] as TButton);

یوسف زالی
یک شنبه 01 خرداد 1390, 23:11 عصر
راستی این هم بد نیست:
TM(Button1).OnEnter := SomeThing.. // ye ruydad bara onenter dokme khodetun benevisid

با کد بالا می تونید علاوه بر کاری که خودش می کنه یه روبداد رو هم خودتون بنویسید.