View Full Version : آیا میتوان یک Property به یک کامپوننت اضافه کرد بدون اینکه کامپوننت جدیدی بسازیم
idic1
چهارشنبه 08 تیر 1384, 17:14 عصر
با سلام خدمت دوستان عزیز
آیا میتوان یک Property به یک کامپوننت اضافه کرد بدون اینکه کامپوننت جدیدی بسازیم؟
توضیح اینکه سورس کامپوننت را نیز نمیخواهیم تغییر دهیم
با تشکر از راهنمائی دوستان
Delphi_Developer
پنج شنبه 09 تیر 1384, 01:47 صبح
اینجا برام بذارش تا ببینم میتونم برات یه کاریش کنم یا نه :sunglass:
vcldeveloper
پنج شنبه 09 تیر 1384, 02:19 صبح
توضیح اینکه سورس کامپوننت را نیز نمیخواهیم تغییر دهیم
پس می خوای چیکار کنی؟!
ساده ترین و اصولی ترین راه اینه که یه کامپوننت جدید از کامپوننت موجود ارث ببره و یه property بهش اضافه کنه.
idic1
پنج شنبه 09 تیر 1384, 14:19 عصر
با سلام
مجموعه ReportBuilder را در نظر بگیرید
در این مجموعه کامپوننتی وجود دارد به نام ppReport که این کامپوننت دارای یک System Variable به نام PrintDateTime میباشد .
حال میخواهیم یک System Variable به نام FPrintDateTime به آن اضافه شود ( در زمان اجرا برنامه ) که تاریخ شمسی را به ما بدهد . روتین های Read و Write را نیز برای آن مینویسیم.
آیا این کار ، بدون تغییر سورس کامپوننت و بدون ایجاد کامپوننت جدید میسر است؟ بدین صورت که در زمان اجرا در کلاس مربوطه تغییرات را ایجاد کرد و کلاس جدید را جایگزین کلاس اصلی نمود.
Delphi_Developer
پنج شنبه 09 تیر 1384, 23:36 عصر
با سلام
مجموعه ReportBuilder را در نظر بگیرید
در این مجموعه کامپوننتی وجود دارد به نام ppReport که این کامپوننت دارای یک System Variable به نام PrintDateTime میباشد .
حال میخواهیم یک System Variable به نام FPrintDateTime به آن اضافه شود ( در زمان اجرا برنامه ) که تاریخ شمسی را به ما بدهد . روتین های Read و Write را نیز برای آن مینویسیم.
آیا این کار ، بدون تغییر سورس کامپوننت و بدون ایجاد کامپوننت جدید میسر است؟ بدین صورت که در زمان اجرا در کلاس مربوطه تغییرات را ایجاد کرد و کلاس جدید را جایگزین کلاس اصلی نمود.
:strange: :strange: :strange: نه بابا این یکیو دیگه نه >>> تا حالا اینقدر که من Cracking کار کردم هنوز ندیدم که کسی بتونه یه کد برنامه نویسی به یه برنامه اضاف کنه >>> شاید هم همچین کاری رو یکی بتونه بکنه اما اینو میدونم که تو کل جهان از 1000 نفر cracker فقط یکیشون میتونه همچین کاریو بکنه ... اما اگه فقط بخوای یه روی اون برنامه بنویسی و نه
Delphi_Developer
پنج شنبه 09 تیر 1384, 23:38 عصر
اگه بخوای فقط یه Property بهش اضافه کنی شاید بشه اما کد اضافه کردن رو نه
MSK
جمعه 10 تیر 1384, 13:58 عصر
اگه منظور شما رو درست فهمیده باشم فکر کنم به راحتی بشه!
شما می خواهید از درست کردن یه کامپوننت جدید جلوگیری بکنید درحالی که اضافه کردن یه پروپرتی به یه کامپوننت یعنی درست کردن یه کامپوننت جدید!
آقای کشاورز به درستی اشاره کردند! اگه شما به درستی مفاهیم ارث بری رو درک کرده باشید به راحتی میتوانید همچین کاری بکنید!
درواقع شما با تعریف یه کلاس مشتق شده از کامپوننتتون توی کد برنامه یه کامپوننت جدید درست کردید درحالی که از رجیستر کردن اون و باقی تشریفات جلوگیری کردید!
آیا منظور شما همین بوده یا چیز دیگه ای نیاز دارید؟!
:گیج:
idic1
یک شنبه 12 تیر 1384, 14:40 عصر
یا منظور شما همین بوده یا چیز دیگه ای نیاز دارید؟!
منظور من همین است که شما اشاره کردید
فقط اگر می توانید با مثالی نحوه انجام این کار را بیان نمائید . مثلا یک پروپرتی به کامپوننت TLable اضافه کنید بدون اینکه تحت نام جدیدی رجیستر شود
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.