تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 10 از 10

نام تاپيک: مشکل در ایجاد event برای array controls

  1. #1
    حـــــرفـه ای SSS_HHH_OOO's Avatar
    تاريخ عضويت
    Jan 2008
    محل سكونت
    کرج
    پست ها
    5,783

    پيش فرض مشکل در ایجاد event برای array controls

    سلام
    من یه برنامه میخوام بنویسم که یه قسمتش اینطوریه که با کلیک روی صفحه یه خط که دو سرش دو تا دایره هستن کشیده بشه و هر وقت کلیک دوم انجام شد خط ثابت بشه و با کلیک بعدی دوباره یه خط جدید
    تا اینجا مشکلی نداره
    مشکل اینجاس که من میخوام فقط وقتی روی دایره ها کلیک میشه یه خط جدید ساخته بشه پس باید یه event برای دایره ها ایجاد بشه ولی از اونجایی که این دایره ها آرایه هستن نمیتونم براشون event درست کنم
    چطوری میشه اینکارو کرد؟؟

    یعنی الان توی event کلیک شدن روی فرم اینو نوشتم
    ممنون میشم کسی اگه بتونه کمکم کنه
    اینم برنامه:

    [ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]

    این کل کدیه که فعلا نوشتم و خطوطی که میخوامو میکشه ولی هر جای صفحه


    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    Last edited by SSS_HHH_OOO; 29-11-2010 at 23:03.

  2. #2
    کـاربـر بـاسـابـقـه god of war 2's Avatar
    تاريخ عضويت
    Jun 2007
    پست ها
    585

    پيش فرض

    سلام.
    شما میتونید از قطعه کد های زیر برای ایجاد Handle به هر رویدادی از دایره ها استفاده کنید.
    برای مثال شما اول باید یک زیر روال برای دریافت رویداد کلیک (یا هر رویداد دیگری) داشته باشید شبیه کد زیر

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    و بعد پس از ایجاد و مقدار دهی اولیه هر کدام از دایره ها میتونید رویداد کلیک انها را با استفاده از تابع زیر به Sub بالا یی که تعریف کردید مرتبط کنید.

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    البته میتونید در نوع آرگومان در یافتی از موارد دیگری هم استفاده کنید که بستگی به خود شما داره که کدوم مناسب تره مثل نمونه زیر (دقت کنید بجای استفاده از ByVal از ByRef یعنی انتقال از طریق ارجاع استفاده کنید. )

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

  3. این کاربر از god of war 2 بخاطر این مطلب مفید تشکر کرده است


  4. #3
    حـــــرفـه ای SSS_HHH_OOO's Avatar
    تاريخ عضويت
    Jan 2008
    محل سكونت
    کرج
    پست ها
    5,783

    پيش فرض

    ممنون دوست عزیز
    الان این فانکشنو کجا باید استفاده کنم ازش؟

  5. #4
    کـاربـر بـاسـابـقـه god of war 2's Avatar
    تاريخ عضويت
    Jun 2007
    پست ها
    585

    پيش فرض

    الان این فانکشنو کجا باید استفاده کنم ازش؟
    هر جایی میتونی استفاده کنی فقط باید قبلش اون دایره مورد نظر مقدار دهی شده باشه.برای مثال:

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    این کد برای ایجاد handle به رویداد کلیک اولین عضو آرایه دایره ها که شما اونو در form_load مقدار دهی کردین.
    برای بقیه دایره ها هم میتونید دقیقا بعد از اینکه مقدار دهی شدند این کارو انجام بدید.
    Last edited by god of war 2; 30-11-2010 at 12:59.

  6. این کاربر از god of war 2 بخاطر این مطلب مفید تشکر کرده است


  7. #5
    حـــــرفـه ای SSS_HHH_OOO's Avatar
    تاريخ عضويت
    Jan 2008
    محل سكونت
    کرج
    پست ها
    5,783

    پيش فرض

    آقا دستت درد نکنه خیلی لطف کردی مشکلمو حل کردی

  8. #6
    حـــــرفـه ای SSS_HHH_OOO's Avatar
    تاريخ عضويت
    Jan 2008
    محل سكونت
    کرج
    پست ها
    5,783

    پيش فرض

    حالا یه سوال دیگه
    من الان میخوام بدونم روی کدوم یکی از دایره ها کلیک شده چیکار باید بکنم؟؟ الان یه رویداد کلی برای همه دایره ها داریم ولی میخوام یه متغیر داشته باشم که بگه کدوم دایره کلیک شده

  9. #7
    کـاربـر بـاسـابـقـه god of war 2's Avatar
    تاريخ عضويت
    Jun 2007
    پست ها
    585

    پيش فرض

    من الان میخوام بدونم روی کدوم یکی از دایره ها کلیک شده چیکار باید بکنم؟؟
    شی sender در

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    دقیقا برابر با دایره ای است که روی آن کلیک شده.
    اگر اندیس دایره کلیک شده در آرایه رو هم لازم دارید میتونید از مشخصه نام هر کدام از دایره ها برای ثبت شماره اندیس استفاده کنید . البته میتونید برای پیدا کردن اندیس از راههای دیگری هم مثل جستجوی اون شی در آرایه استفاده کنید که این کار باعث پایین امدن سرعت برنامه و افت کارایی میشه.
    برای مثال ثبت اندیس در مشخصه name:

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

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    Last edited by god of war 2; 30-11-2010 at 18:55.

  10. این کاربر از god of war 2 بخاطر این مطلب مفید تشکر کرده است


  11. #8
    حـــــرفـه ای SSS_HHH_OOO's Avatar
    تاريخ عضويت
    Jan 2008
    محل سكونت
    کرج
    پست ها
    5,783

    پيش فرض

    ممنون
    آخه جزو لیستی که وی بی باز میکرد برای sender این left وجود نداشت ولی تو ران تایم مثل اینکه کار کرد

  12. #9
    کـاربـر بـاسـابـقـه god of war 2's Avatar
    تاريخ عضويت
    Jun 2007
    پست ها
    585

    پيش فرض

    میتونید برای راحتی و سرعت کار هنگام کد نویسی شبیه زیر عمل کنید

    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    البته اینکار باعث ایجاد یک کپی اضافه از شی دایره در حافظه میشه که چندان مهم نیست ولی برای اشیاء بزرگتر این کار میتونه از سرعت برنامه کم کنه.
    برای اینکه فقط از این شی فقط در زمان تایپ کد و برای راحتی کار استفاده کنید میتونید بعد از اینکه کد نویسی به اتمام رسید قبل از build برنامه با استفاده از ابزار Replace خود VS تمام واژه های ncrcl رو در این قطعه کد به sender تبدیل کنید و در نهایت خط اعلان متغییر رو هم

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

  13. این کاربر از god of war 2 بخاطر این مطلب مفید تشکر کرده است


  14. #10
    حـــــرفـه ای SSS_HHH_OOO's Avatar
    تاريخ عضويت
    Jan 2008
    محل سكونت
    کرج
    پست ها
    5,783

    پيش فرض

    نکته خیلی جالبی بود ممنون

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •