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

نام تاپیک: باز شدن فرم با حالتهاي انيميشني!!!

  1. #1
    کاربر دائمی آواتار mahboube
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    شيراز
    سن
    37
    پست
    596

    Smile باز شدن فرم با حالتهاي انيميشني!!!

    سلام
    من دنبال نوشتن برنامه اي هستم كه بتونم فرم رو باانيميشن باز كنم.(البته نه انيميشن هاي ساده!!!!) مثل ورق زدن كتاب.
    هر كسي هر پيشنهادي يا نمونه برنامه خوبي داره اگه اينجا بزاره ok‌ميشه.
    خودم هم چندتا نمونه دارم كه ميزارم.
    اينا چندتا لينك نمونه خيلي خوشگلن:(نگاه كنيد حالشو ببريد)
    http://www.codeproject.com/KB/miscctrl/animators.aspx
    و
    http://www.codeproject.com/KB/dialog/walkingrabbit.aspx

    وعشق من اين
    http://www.codeproject.com/KB/GDI-pl...shDeskPet.aspx

    حالشو ببرين با اينا تا بعد....

  2. #2

    نقل قول: باز شدن فرم با حالتهاي انيميشني!!!

    دوست عزيز يك نگاهي به اين نرم افزار بنداز FlippingBook PDF Publisher
    براي برنامه نويسي نيست ولي ميشه باهاش كتاب هاي كه قابليت ورق زدن داره رو ساخت تازه ميتوني به صورت html يا .... ازش خروجي بگيري
    توي گوگل سرچ كن لينك دانلودش هم هست...

  3. #3

    نقل قول: باز شدن فرم با حالتهاي انيميشني!!!

    سلام
    این نمونه رو خودم الان نوشتم که البته خیلی مقدماتیه ولی راحت میتونی ازش ایده بگیری و تکمیلش کنی و افکتهای دیگه شبیه این رو بسازی .
    روش کارش هم اینه که یه بار از فرم عکس میگیره و بعد کنترلها رو مخفی میکنه و کارای لازم رو انجام میده . آخرش دوباره کنترلها رو ب میگردونه .

    private void MyEffect1()
    {
    Image StartBg =this.BackgroundImage;
    Bitmap MyBitmap = new Bitmap(this.Width,this.Height);
    this.DrawToBitmap(MyBitmap, new Rectangle(0, 0, this.Width, this.Height));
    Graphics MyGraphics = Graphics.FromImage(MyBitmap);
    this.BackgroundImage = MyBitmap;
    foreach (Control C in this.Controls)
    {
    C.Visible=false;
    }
    button1.Visible = false;
    this.Refresh();
    MyGraphics.DrawImage(MyBitmap, 0, 0);
    int StartWidth = this.Width;
    for (int i = 0; i <= StartWidth; i++)
    {
    this.Width = i;
    this.Refresh();
    }

    foreach (Control C in this.Controls)
    {
    C.Visible = true;
    }
    this.BackgroundImage=StartBg ;
    }


    این تابع باید در formshow یا بعد از اون قرار داده بشه .
    فایل های ضمیمه فایل های ضمیمه

  4. #4
    کاربر دائمی آواتار mahboube
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    شيراز
    سن
    37
    پست
    596

    نقل قول: باز شدن فرم با حالتهاي انيميشني!!!

    اينام باحالن:
    http://www.codeproject.com/KB/game/reversi.aspx
    و
    http://www.codeproject.com/KB/GDI-plus/Sparkle.aspx
    فایل های ضمیمه فایل های ضمیمه

  5. #5
    کاربر دائمی آواتار mahboube
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    شيراز
    سن
    37
    پست
    596

    نقل قول: باز شدن فرم با حالتهاي انيميشني!!!


    1]سلام
    این نمونه رو خودم الان نوشتم که البته خیلی مقدماتیه ولی راحت میتونی ازش ایده بگیری و تکمیلش کنی و افکتهای دیگه شبیه این رو بسازی .
    روش کارش هم اینه که یه بار از فرم عکس میگیره و بعد کنترلها رو مخفی میکنه و کارای لازم رو انجام میده . آخرش دوباره کنترلها رو ب میگردونه .
    آفرين.دمت گرم.اتفاقا كاري كه خودم دارم مي كنم همينه.
    براهمينه تمام توابع عكس گرفتن از فرم رو درآوردم.(تو برنامه نويس گذاشتم)
    وقتي از فرم عكس بگيرين مي تونين هر شكلي خواستين بازش كنيد.
    ممنون.لطفيدي.
    آخرین ویرایش به وسیله mahboube : پنج شنبه 15 مهر 1389 در 14:07 عصر

  6. #6

    نقل قول: باز شدن فرم با حالتهاي انيميشني!!!

    نقل قول نوشته شده توسط arash mehrani مشاهده تاپیک
    دوست عزيز يك نگاهي به اين نرم افزار بنداز FlippingBook PDF Publisher
    براي برنامه نويسي نيست ولي ميشه باهاش كتاب هاي كه قابليت ورق زدن داره رو ساخت تازه ميتوني به صورت html يا .... ازش خروجي بگيري
    توي گوگل سرچ كن لينك دانلودش هم هست...
    ممنون بابت برنامه ات
    دانلود کردمش ولی مشکل اینجاست که چجوری واسه برنامه های خودمون از این تکنیک استفاده کنیم؟

  7. #7

    نقل قول: باز شدن فرم با حالتهاي انيميشني!!!

    سلام
    این هم یه افکت دیگه .
    Copyright با نقل قول


    public static void MyEffect1(Form FormName, int MiliSecondDuration = 300)
    {
    bool[] Visibles = new bool[FormName.Controls.Count];
    int HeightDiff = FormName.Height - FormName.ClientSize.Height;
    int WidthDiff = FormName.Width - FormName.ClientSize.Width;
    Image StartBg = FormName.BackgroundImage;
    Bitmap MyBitmap = new Bitmap(FormName.ClientSize.Width, FormName.ClientSize.Height);
    Bitmap MyBitmap2 = new Bitmap(FormName.Width, FormName.Height);
    FormName.DrawToBitmap(MyBitmap2, new Rectangle(0, 0, FormName.Width, FormName.Height));

    Graphics MyGraphics = Graphics.FromImage(MyBitmap);
    FormName.BackgroundImage = MyBitmap;
    int i = 0;
    foreach (Control C in FormName.Controls)
    {
    Visibles[i] = C.Visible;
    i++;
    C.Visible = false;
    }
    FormName.Refresh();
    MyGraphics.DrawImage(MyBitmap2, -WidthDiff, -HeightDiff);
    int StartWidth = FormName.Width;
    int StartHeight = FormName.Height;
    float HtWd = (float)FormName.Height / FormName.Width;
    int StartLeft = FormName.Left;
    int StartTop = FormName.Top;
    DateTime StartTime = DateTime.Now;

    FormName.Height = 2;
    double Nesbat = 0;
    FormName.Top = (int)(StartTop + (StartHeight - (Nesbat * StartHeight)) / 2);
    while (Nesbat < 1)
    {
    Nesbat = (DateTime.Now.Subtract(StartTime).TotalMillisecond s) / MiliSecondDuration;
    FormName.Left = (int)(StartLeft + (StartWidth - Nesbat * StartWidth) / 2);
    FormName.Width = (int)(Nesbat * StartWidth);
    FormName.Opacity = Nesbat;
    FormName.Refresh();
    Application.DoEvents();
    }

    StartTime = DateTime.Now;
    Nesbat = 0;
    while (Nesbat < 1)
    {
    Nesbat = (DateTime.Now.Subtract(StartTime).TotalMillisecond s) / MiliSecondDuration;
    FormName.Top = (int)(StartTop + (StartHeight - (Nesbat * StartHeight)) / 2);
    FormName.Height = (int)(Nesbat * StartHeight);
    FormName.Refresh();
    Application.DoEvents();
    }
    i = 0;
    foreach (Control C in FormName.Controls)
    {
    C.Visible = Visibles[i];
    i++;
    }
    FormName.Top = StartTop;
    FormName.Height = StartHeight;
    FormName.Left = StartLeft;
    FormName.Width = StartWidth;
    FormName.BackgroundImage = StartBg;
    FormName.Refresh();
    }

    public static void MyEffect2(Form FormName, int MiliSecondDuration = 300)
    {
    int HeightDiff = FormName.Height - FormName.ClientSize.Height;
    int WidthDiff = FormName.Width - FormName.ClientSize.Width;
    Image StartBg = FormName.BackgroundImage;
    Bitmap MyBitmap = new Bitmap(FormName.ClientSize.Width, FormName.ClientSize.Height);
    Bitmap MyBitmap2 = new Bitmap(FormName.Width, FormName.Height);
    FormName.DrawToBitmap(MyBitmap2, new Rectangle(0, 0, FormName.Width, FormName.Height));

    Graphics MyGraphics = Graphics.FromImage(MyBitmap);
    FormName.BackgroundImage = MyBitmap;
    foreach (Control C in FormName.Controls)
    {
    C.Visible = false;
    }
    FormName.Refresh();
    MyGraphics.DrawImage(MyBitmap2, -WidthDiff, -HeightDiff);
    int StartWidth = FormName.Width;
    int StartHeight = FormName.Height;
    float HtWd = (float)FormName.Height / FormName.Width;
    int StartLeft = FormName.Left;
    int StartTop = FormName.Top;
    DateTime StartTime = DateTime.Now;

    double Nesbat = 1;
    while (Nesbat > 0)
    {
    Nesbat = 1 - (DateTime.Now.Subtract(StartTime).TotalMillisecond s) / MiliSecondDuration;
    FormName.Width = (int)(Nesbat * StartWidth);
    FormName.Height = (int)(Nesbat * StartHeight);
    FormName.Left = (int)(StartLeft + (StartWidth - Nesbat * StartWidth) / 2);
    FormName.Top = (int)(StartTop + (StartHeight - (Nesbat * StartHeight)) / 2);
    FormName.Opacity = Nesbat;
    FormName.Refresh();
    Application.DoEvents();
    }

    foreach (Control C in FormName.Controls)
    {
    C.Visible = true;
    }
    FormName.Top = StartTop;
    FormName.Height = StartHeight;
    FormName.Left = StartLeft;
    FormName.Width = StartWidth;
    FormName.BackgroundImage = StartBg;
    }
    این هم نمونه برای بستن و بازکردن فرم با افکت :
    فایل های ضمیمه فایل های ضمیمه
    آخرین ویرایش به وسیله MEhdi Sobhani : جمعه 16 مهر 1389 در 18:19 عصر

  8. #8

    نقل قول: باز شدن فرم با حالتهاي انيميشني!!!

    سلام
    اين برنامه هم فكر مي كنم جالب باشه ،ولي انيميشن هاي ساده اي داره
    http://ehsanavr.com/?p=893

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

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