نمایش نتایج 1 تا 11 از 11

نام تاپیک: محو شدن تدریجی یک کنترل

  1. #1
    کاربر تازه وارد
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    .Net Framework
    پست
    84

    محو شدن تدریجی یک کنترل

    دوستان چطور می تونم یک کنترل رو به صورت تدریجی از روی فرم محو کنم؟ مثلا یک تکست باکس روی فرم گذاشتم و میخوام وقتی روی باتن کلیک میکنم در عرض 2 ثانیه اون محو شه.

    میدونم که باید از یه تایمر استفاده کنم ولی نمی دونم چطور باید بگم که این تکست باکس نیمه شفاف بشه قبل از اینکه visible = false; بشه.

    با تشکر از شما دوستان

  2. #2
    کاربر دائمی آواتار s.khoshfekran
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    تهران
    پست
    503

  3. #3
    کاربر تازه وارد
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    .Net Framework
    پست
    84

    نقل قول: محو شدن تدریجی یک کنترل


    ممنون از کمکت ولی اینا فقط دارن نشون میدن که چطور میشه به یک باتن (یا هر کنترل دیگه) به بک گراند ترنس پرنت داد. ولی من میخوام کنترل مورد نظرم مثل یک انیمیشن کم کم محو شه. درست مثل کاری که این کد برای بسته شدن یک فرم انجام میده


    Utility ClosingForm = newUtility();

    ClosingForm.FadeOutClosingForm(this);


    که البته این کد رو از همین سایت برنامه نویس پیدا کردم. من میخوام یه همچین عملی در مورد مثلا یه تکست باکس انجام شه.

  4. #4
    کاربر دائمی آواتار flash118
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    بسته های شبکه
    پست
    466

    نقل قول: محو شدن تدریجی یک کنترل

    با سلام و عرض ادب
    دوست عزیز نمونه زیر رو یه نگاهی کن فکر میکنم جواب سئوالتون اینجا پیدا کنید
    منبع :کد پراجکت
    فایل های ضمیمه فایل های ضمیمه

  5. #5
    کاربر دائمی آواتار s.khoshfekran
    تاریخ عضویت
    فروردین 1389
    محل زندگی
    تهران
    پست
    503

    نقل قول: محو شدن تدریجی یک کنترل

    میتونی میزان Transparency رو تو یه حلقه کم کنی بعدش با متد Refresh
    رویداد Paint رو قراخوانی کنی
    البته دقیق نمی دونم!!

  6. #6

    نقل قول: محو شدن تدریجی یک کنترل

    سلام دو.ست عزيز از اين كد ميتوني استفاده كني :

     this.Opacity = 1;
    for (int i = 0; i < 2000; i++)
    {
    this.Opacity -= 0.000800;
    Application.DoEvents();

    }

  7. #7
    کاربر دائمی
    تاریخ عضویت
    تیر 1389
    محل زندگی
    0x111530EF - 0x11657DA
    پست
    873

    نقل قول: محو شدن تدریجی یک کنترل

    نقل قول نوشته شده توسط mehrdad.h مشاهده تاپیک
    سلام دو.ست عزيز از اين كد ميتوني استفاده كني :

     this.Opacity = 1;
    for (int i = 0; i < 2000; i++)
    {
    this.Opacity -= 0.000800;
    Application.DoEvents();

    }
    دوست عزیز این کد خیلی ابتدایی هست و از ابتدایی بودنش هم بگزریم ایشون میخوان یک کنترل مثل باتون و یا پنل رو محو کنند نه خود برنامه رو.

  8. #8
    کاربر تازه وارد
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    .Net Framework
    پست
    84

    نقل قول: محو شدن تدریجی یک کنترل

    نقل قول نوشته شده توسط Saman_12 مشاهده تاپیک
    دوست عزیز این کد خیلی ابتدایی هست و از ابتدایی بودنش هم بگزریم ایشون میخوان یک کنترل مثل باتون و یا پنل رو محو کنند نه خود برنامه رو.
    خوش بختانه ایشون منظور منو دقیق متوجه شدن و جوابای دیگه به شوال من مربوط نبودن. البته بازم از شما دوستانی که جواب دادید ممنونم. بالاخره باید یه روشی برای نوشتن این جور برنامه ها با گرافیک بالا با سی شارپ باشه که کنترل ها محو شن و این جور جنگولک بازیا رو داشته باشه!

  9. #9
    کاربر تازه وارد
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    .Net Framework
    پست
    84

    نقل قول: محو شدن تدریجی یک کنترل

    نقل قول نوشته شده توسط s.khoshfekran مشاهده تاپیک
    میتونی میزان Transparency رو تو یه حلقه کم کنی بعدش با متد Refresh
    رویداد Paint رو قراخوانی کنی
    البته دقیق نمی دونم!!
    متاسفانه مسئله اینه که خاصیت Transparency مخصوص فرم هست نه کنترل ها مثل تکست باکس

  10. #10
    کاربر تازه وارد
    تاریخ عضویت
    مرداد 1388
    محل زندگی
    .Net Framework
    پست
    84

    نقل قول: محو شدن تدریجی یک کنترل

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

  11. #11
    منتظر تایید آدرس ایمیل
    تاریخ عضویت
    آذر 1387
    محل زندگی
    تهران
    پست
    848

    نقل قول: محو شدن تدریجی یک کنترل


    Storyboard storyBoard = new Storyboard();

    storyBoard.Completed += (sBoardSender, sBoardArgs) =>
    {
    MessageBox.Show("The button has been disapear !");
    btnMain.Visibility = System.Windows.Visibility.Collapsed;
    // OR
    btnMain.IsEnabled = false;
    };

    // 1.0 to 0.0 in 3 seconds !!!
    DoubleAnimation animationTime = new DoubleAnimation(1.0, 0.0, TimeSpan.FromSeconds(3));


    // We want to go from 1.0 UIElement.OpacityProperty to 0.0 UIElement.OpacityProperty
    Storyboard.SetTargetProperty(animationTime, new PropertyPath(UIElement.OpacityProperty));

    storyBoard.Children.Add(animationTime);

    storyBoard.Begin(btnMain, false);
    البته این کد مبتنی بر Direct X هستش؛ و انتظار اجراش رو تو بقیه پلتفرم ها نداشته باشین.
    مگه این که این کد رو تو SL بنویسین؛ اون وقت تو پلتفرم های معروف میتونید ازش پشتبانی کنین

    Supported Platforms : Windows ( 98 - 7 ) Linux Mac OS , Win Mobile , Some Nokia Phones
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله sia_2007 : جمعه 05 آذر 1389 در 16:34 عصر دلیل: درج Source Code

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •