PDA

View Full Version : سوال: نشناختن اشیاء



batman1
شنبه 17 مرداد 1394, 08:12 صبح
سلام به همه.
دوستان،من یه برنامه دارم که چندتا فرم داره.برای فرم اول دوتا تایمر گذاشتم.
در فرم بعدی،میخوام برای یه دکمه در رویداد کلیکش بنویسم که وقتی کلیک شد،تایمر رو غیرفعال کن.
اما مثل اینکه فرم دومم تایمر رو نمیشناسه و هرچی کلمه Timer رو میزنم،نمیارتش.
چی کار کنم؟
ممنون.

ali_72
شنبه 17 مرداد 1394, 09:00 صبح
سلام

روی تایمر کلیک راست کن از قسمت properties کنترل ، خاصیت modifiers رو برابر Internal قرار بده
در فرم بعدی یه شی از فرمی که تایمرت اونجا قرار داره بساز دیگه دسترسی داره بهش


form2 f2=new form2();
f2.timer1.enabled=false;

batman1
شنبه 17 مرداد 1394, 19:32 عصر
سلام

روی تایمر کلیک راست کن از قسمت properties کنترل ، خاصیت modifiers رو برابر Internal قرار بده
در فرم بعدی یه شی از فرمی که تایمرت اونجا قرار داره بساز دیگه دسترسی داره بهش


form2 f2=new form2();
f2.timer1.enabled=false;
اصلا غیرفعال نمیشه!!

ali_72
یک شنبه 18 مرداد 1394, 06:55 صبح
اصلا غیرفعال نمیشه!!

موقعی که مثلا تو فرم 2 فرم 3 رو صدا میزنی این هم بنویس f3.owner=this

batman1
یک شنبه 18 مرداد 1394, 12:26 عصر
موقعی که مثلا تو فرم 2 فرم 3 رو صدا میزنی این هم بنویس f3.owner=this
اصلا تایمرها متوقف نمیشن!!
فکر کنم باید از تعریف متغیر Static استفاده کنم که نمیدونم چه جوری این کارو انجام بدم!!
شما بلدید؟

jamal_ch
یک شنبه 18 مرداد 1394, 13:12 عصر
خیلی راحت میتونی از یک متغیر استاتیک استفاده کنی و با استفاده از ونمتغیر تایمر رو stopکنید




اصلا تایمرها متوقف نمیشن!!
فکر کنم باید از تعریف متغیر Static استفاده کنم که نمیدونم چه جوری این کارو انجام بدم!!
شما بلدید؟


اول یک کلاس بسازید بعد اونو public کنید
یک متغیر توشش به صورت زیر تعریف کن

public static Boolean mytemp = true;
بعد تو فرمی که میخوایی تایمر رو قطع کنی این متغیر رو false کن
تو خود تایمر هر دفعه که اجرا میشه این متغیر رو چک کن اگه flase شد تایمر رو stop کن

batman1
یک شنبه 18 مرداد 1394, 19:37 عصر
خیلی راحت میتونی از یک متغیر استاتیک استفاده کنی و با استفاده از ونمتغیر تایمر رو stopکنید


اول یک کلاس بسازید بعد اونو public کنید
یک متغیر توشش به صورت زیر تعریف کن

public static Boolean mytemp = true;
بعد تو فرمی که میخوایی تایمر رو قطع کنی این متغیر رو false کن
تو خود تایمر هر دفعه که اجرا میشه این متغیر رو چک کن اگه flase شد تایمر رو stop کن
همون دیگه....من بلد نیستم داخل تایمر بهش بگم که اگه متغیر فالس شد،تایمر رو از کار بنداز!!:ناراحت:
ببین،بعد از ایجاد کردن یه کلاس و تعریف متغیر استاتیکی که شما گفتید،میام داخل فرم لود فرمی که میخوام تایمرش غیرفعال شه مینویسم:
stop=false;l
اما نمیدونم داخل رویداد تیک تایمر چی بنویسم که متوقف شده!
ممنون میشم کمکم کنید.