PDA

View Full Version : سوال: مشکل Refresh شدن فرم



rroona
دوشنبه 08 شهریور 1389, 22:18 عصر
با سلام خدمت دوستان
من یه ساعت آنالوگ طراحی کردم و برای اینکه به ثانیه شمار و عقربه های دیگر حرکت بدم از یه تایمر استفاده کردم که هر ثانیه یه بار فرم رو Refresh میکنه

از اونجایی که بدنه ساعت رو هم با کلاس Graphics طراحی کردم ، در هر بار Refresh شدن فرم ، بدنه ساعت تیک میزنه وجلوه خوب و زیبایی نداره
برای رفع این مشکل چیکار میتونم بکنم؟؟

سورس برنامم رو هم ضمیمه میکنم تا دوستان این مشکل رو ببینن

ممنون

aminghaderi
سه شنبه 09 شهریور 1389, 00:21 صبح
استفاد از عمل رفرش در برنامه نویسی گرافیک یا بازی مجاز نیست؟!
شما باید خط قبلی رو با استفاده ار رسم مجدد خط با رنگ پس زمینه فرم رسم کنی که به ظاهر به نظر بیاد خط پاک شده؟!
شما می تونی این کار رو داخل یه حلقه For بزرای و رنگ های بین رنگ اصلی و رنگ فرم رو در داخل حلقه قرار بدی و هر بار حلقه رو با رنگ مات تر پاک کنی و یه این صورت یه افکت گرافیک تولید کردید (عقربه ساعت شما اهسته محو می شود)

موفق باشی.

ali_autumnal
سه شنبه 09 شهریور 1389, 08:29 صبح
this.Refresh();

هزینه بسیار زیادی داره. این کار رو به هیچ عنوان توصیه نمیکنم.
بهترین کار همون روش دوست خوبم aminghaderi هست. شما بهتره اول ثانیه شمار رو با هر رنگ دلخواهی نمایش بدی بعداز زمان دلخواهی ثانیه شمار رو به رنگ پس زمینه تغییر رنگ بدی و بعداز آن دوباره به رنگ دلخواه در مکان لازم نمایش بدی.

غالبا در بین این دو تغییر رنگ یعنی رنگ دلخواه و رنگ پس زمینه یه Delay میزارن و بعد رنگ رو تغییر میدن.
شما هم در صورت نیاز میتونید از کد زیر برای Delay استفاده کنید:




System.Threading.Thread.Sleep(10);

موفق باشید
علی پاییزی