ورود

View Full Version : سوال: تبدیل کلاس به کامپوننت



sara.mahdavi
دوشنبه 18 شهریور 1392, 12:32 عصر
با سلام:لبخندساده:

برای تبدیل یک کلاس به کامپوننت باید کلاس چه قسمتهایی داشته باشه؟
آیا هر کلاسی رو میشه به کامپوننت تبدیل کرد؟
برای استفاده از یک کلاس در برنامه های مختلف اون رو به کامپوننت تبدیل کنم بهتره یا راه بهتری هم هست؟

با تشکر:قلب:

یوسف زالی
دوشنبه 18 شهریور 1392, 12:37 عصر
سلام!
فقط کلاسهایی قابلیت کامپوننت شدن رو دارند که از یکی از زیرکلاسهای TComponent مشتق شده باشند.
به این ترتیب کلاسهایی مثل استریم و اکسپشن رو نمی شه کامپوننت کرد (مستقیم)
برای استفاده از یک کلاس، اگر رابط های کاربری زیادی داره، مثل اندازه، مکان، کپشن، رویدادها، و ... بهتره که اون رو کامپوننت کنید.
نحوه ی تبدیل کلاس به کامپوننت رو هم در پست شماره 4 اینجا (http://barnamenevis.org/showthread.php?396089-%D8%B3%D8%A7%D8%AE%D8%AA-%DA%A9%D8%A7%D9%85%D9%BE%D9%88%D9%86%D9%86%D8%AA-VCL-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%D8%A7%D8%AF%D9%87)توضیح دادم.

sara.mahdavi
دوشنبه 18 شهریور 1392, 13:04 عصر
ممنون:چشمک:

برای استفاده از یک کلاس، اگر رابط های کاربری زیادی داره، مثل اندازه، مکان، کپشن، رویدادها، و ... بهتره که اون رو کامپوننت کنید.
خب اگه رابط های کاربری کم داشته باشه چی؟؟؟؟


نحوه ی تبدیل کلاس به کامپوننت رو هم در پست شماره 4 اینجا (http://barnamenevis.org/showthread.php?396089-%D8%B3%D8%A7%D8%AE%D8%AA-%DA%A9%D8%A7%D9%85%D9%BE%D9%88%D9%86%D9%86%D8%AA-VCL-%D8%A8%D9%87-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3%D8%A7%D8%AF%D9%87)توضیح دادم.
من با استفاده از همین آموزشتون تبدیل کردم ولی وقتی که بصورت کلاس بود میتونستم با فراخوانی کلاس از توابع اون استفاده کنم اما وقتی نبدیل به کامپوننت میشه دیگه امکانش نیس
مشکلم کجاس؟؟؟؟

یوسف زالی
دوشنبه 18 شهریور 1392, 13:38 عصر
در حالت کلی تبدیل به کامپوننت یک قابلیت اضافی محسوب می شه. با و بدون تبدیل هم می تونید همچنان در فرمت ران تایم بصورت کلاس باهاش کار کنید.
برای ارورتون هم باید کد بررسی بشه.