آموزش بکارگیری تابع AnimateWindow برای افکت دادن به فرم

فاطمه طالبی

کاربر بیش فعال
سلام
این تابع رو خیلی دوست دارم که باش میشه برناممون رو زیباتر کنیم. درواقع میتونیم اشیاءمون رو با انیمیشن، load یا show کنیم.
ابتدا تابع رو که از کتابخانه ی user32 هست ، به برنامه معرفی میکنیم :

قبل از فرم لود :
کد:
[DllImport("user32.dll")]
        static extern bool AnimateWindow(IntPtr Hwnd, int Time, int Flag);

در فرم لود:
کد:
AnimateWindow(this.Handle, 1000, 0x00000001);

پارامتر اول که هندل اون شی ای هست که میخوام بصورت انیمیشن نمایش داده بشه که من هندل فرم اصلی رو انتخاب کردم. پارامتر دوم که Time بر حسب میلی ثانیه هست که زمان اجرای افکت رو مشخص میکنه. با پارامتر سوم که Flag هست، نوع انیمیشن رو انتخاب میکنیم. که در سایت منبع میتونید جزئیات این تابع و بقیه ی افکت ها رو ببینید و استفاده کنین: http://msdn.microsoft.com/en-us/library/windows/desktop/ms632669(v=vs.85).aspx

برای تمام اشیایی که دارای هندل هستن میشه تابع رو استفاده کرد.مثلا در اینجا من یک دکمه رو قبلا hide بوده با انیمشن show کردم :
کد:
  AnimateWindow(button1.Handle, 1000, 0x00000004);
            button1.Show();
پس برای اشیایی که load یا show شده هستن ،این تابع رو نمیشه بکاربرد!
امیدوارم مفید بوده باشه.
 

rezgar_roshan

عضو جدید
سلام. بابت آموزش جالبتون ممنون. ولی وقتی اجرا کردم این پیغامو میده ممنون میشم راهنمایی کنید.
Error 1 The type or namespace name 'DllImport' could not be found (are you missing a using directive or an assembly reference?) D:\Morakhasi\Morakhasi\frmAsli.cs 23 6 Morakhasi
Error 2 The type or namespace name 'DllImportAttribute' could not be found (are you missing a using directive or an assembly reference?) D:\Morakhasi\Morakhasi\frmAsli.cs 23 6 Morakhasi
 

فاطمه طالبی

کاربر بیش فعال
سلام. بابت آموزش جالبتون ممنون. ولی وقتی اجرا کردم این پیغامو میده ممنون میشم راهنمایی کنید.
Error 1 The type or namespace name 'DllImport' could not be found (are you missing a using directive or an assembly reference?) D:\Morakhasi\Morakhasi\frmAsli.cs 23 6 Morakhasi
Error 2 The type or namespace name 'DllImportAttribute' could not be found (are you missing a using directive or an assembly reference?) D:\Morakhasi\Morakhasi\frmAsli.cs 23 6 Morakhasi
سلام. روتین DllImport در ابتدا برای برنامه شناخته شده نیست، زیرش یه خط میاد. شما طبق این عکس گزینه ی اول رو بزنین درست میشه.

 
آخرین ویرایش:

Similar threads

بالا