PDA

نسخه کامل مشاهده نسخه کامل : ایجاد یک کنترل جدید وقتی برنامه در حال اجراست!!؟



whisper
03-05-2007, 09:30
سلام دوستان
من میخوام وقتی برنامه ام در حال اجرا هست یه کنترل جدید بسازم مثلا یه فرم که روش یه کلید هست و بازدن روی این کلید یک کلید دیگه ایجاد میشه ولی هر کاری میکنم کلید جدیدی ساخته نمیشه اگه میشه مشکلمو بگید؟



Dim WithEvents Button2 as Button
Private sub Button1 .click(byval....)
Button2 = New Button
Buton2.location = New Point(104,104)
Button2.size = New size(0,0)
Button2.text="New Button"
end sub

_H2_
03-05-2007, 10:05
سلام
من نوفهمم اون WithEvents اون وصط چه کار میکنه؟!؟!؟!؟!؟

کنترلر ها هم مثل مابقی کلاسس ها باید با دستور تک Dim معرفی شوند و در آخر به مجموعه Controls یک ظرف (مثلاَ فرم جاری) اضافه شوند.

برای هندلینک runtime باید از دستور AddHandler استفاده کنید

برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید



چیزی که با عثت عشق من به VB.Net (و #C) میشود همین runtime است، تحت دات نت همه چیز را میشود در runtime مستقیماَ ساخت و اجرا کرد، حتی کارهایی که مخ انسان را به صوت کشیدن می آورد.

whisper
03-05-2007, 10:26
اول واقعا تشکر مرسی
:31: به جون خودم تو کتابی که داشتم از روش می خوندم اینجوری نوشته دیشب کلی سعی کردم گفتم چرا نمیشهه ها !!!!!!!!!!!!؟:46:
حالا این WithEvents کارش چیه؟؟؟؟؟:19:

_H2_
06-05-2007, 18:13
سلام
دوست من حتماَ در کتاب دقت نکردید! با جفت دستور WithEvants و Handles هم میشود این کار را انجام داد و Designer داخلی خود VB.Net از همین روش استفاده میکند و دو نکته مهم وجود دارد،
اول آنکه متغییری که آن شی را در آن تعریف کرده اید با در سطح ماژول جاری عمومی باشد، یعنی نباید محلی باشد و داخل یک رویه تعریف شود، باید در بالا و پیش از شروع تمام رویه ها تعریف شود
دوم باید کلمه handles را در پایان نام رویداد بیاورید به Form_Load و یا دیگر رویداد ها توجه کنید متوجه میشوید.