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

نام تاپیک: چرا موقع Minimize کردن هرچی کشیدم پاک میشه ؟

  1. #1

    چرا موقع Minimize کردن هرچی کشیدم پاک میشه ؟

    سلام
    من یه تعداد شکل رو روی Form م میکشم ولی بعد از اینکه Form رو Minimize میکنم یا یه منوی دیگه یا برنامه دیگه مثل JetAudio رو روی اون میکشم چیز هایی که کشیده بودم پاک میشن
    چه طوری این مشکل رو حل کنم ؟

  2. #2
    کاربر دائمی آواتار dot_net_lover2
    تاریخ عضویت
    اردیبهشت 1383
    محل زندگی
    شیراز
    پست
    324
    قبلا با GDI در VB همین مشکل را داشتم ولی autoredraw مربوط به فرم را که true میکردم درست میشد در net. هنوز تست نکردم.

  3. #3
    کسی نمی دونه این مشکل رو چه طوری حل کنم ؟

  4. #4
    کاربر دائمی آواتار mamadgmail
    تاریخ عضویت
    دی 1384
    محل زندگی
    نصف جهان
    پست
    213
    می تونی هر چی که می خوای بکشی در رویداد on paint بذاری در این صورت هر اتفاقی بیفته شکلت دوبازه کشیده می شه. البته فکر نمی کنم این راه حل درستی باشه.حتما راه حل های بهتری هم هست.

  5. #5
    زمانی اتفاق میافتد که یک فعل وانفعال روی فرم انجام شود Onpaint رویداد
    مانند مواردی که شما ذکر کردید
    در این رویداد فرم وتمام کنترلهای آن باید خود را دوباره رسم کنند
    در نتیجه آنچه که شما رسم میکنید باید در این رویداد باشد در
    غیر اینصورت در اولین باری که این رویداد اتفاق افتاد حتما شکل شما از دست میرود

  6. #6
    توی Event مینیمایزت یک Repaint بگذار
    شاید جواب ده
    موفق باشید

  7. #7
    کاربر دائمی آواتار joker
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    اصفهان
    سن
    43
    پست
    1,326
    توی ویژوال سی یه مبحثب بود به اسم سریالایز کردن ... شاید اینجا بدردت بخوره.
    خیلی وقته سی کار نمیکنم چیزی یادم نمونه ولی دوستان میتونن کمکت کنن.

  8. #8
    نقل قول نوشته شده توسط sianooshonline
    توی Event مینیمایزت یک Repaint بگذار
    شاید جواب ده
    موفق باشید
    من حرفه ای نیستم میشه مبتدی تر توضیح بدین !!
    Repaint چیه ؟

  9. #9
    کاربر دائمی آواتار Behrooz_CS
    تاریخ عضویت
    اسفند 1384
    محل زندگی
    تهران
    سن
    42
    پست
    168

    Thumbs up

    گل پسر

    کدهایی که برای ترسیم شکلهایت نوشتی را در رویداد
    OnPaint
    بنویس مطمئن باش درست می شه

  10. #10
    کاربر دائمی آواتار mamadgmail
    تاریخ عضویت
    دی 1384
    محل زندگی
    نصف جهان
    پست
    213
    آقا من یک قبلا بهتون گفتم از onpaint استفاده کنید مشکل حل می شه!!!

  11. #11
    یکی از روشهایی که می تونی استفاده کنی استفاده از یک شی ایمیج است .
    شما می توانید تمام چیزهایی که می خواهی بکشی رو تو ایمیج بکشی در این صورت با تغییر فرم اونو از دست نمی دی.

  12. #12
    Onpaint جواب نداد
    قبلا امتحان کرده بودم !!

  13. #13

  14. #14
    کاربر دائمی آواتار Behrooz_CS
    تاریخ عضویت
    اسفند 1384
    محل زندگی
    تهران
    سن
    42
    پست
    168
    می توانی پس از کشیدن بر یک پنل با استفاده از تابع
    DrawtoBitmap
    آنرا در یک عکس بنویسی و به عنوان عکس پس زمینه در فرمت قرار بدی

  15. #15

  16. #16
    کاربر دائمی آواتار MH2538
    تاریخ عضویت
    بهمن 1381
    محل زندگی
    No Man Land
    پست
    537
    سلام
    من یه زمانی یه برنامه گرافیکی برای شبیه سازی گیت های منطقی تو VC++‎ نوشته بودم همین مشکل رو داشت اما از راه (های) زیر مشکل رو حل کردم:
    1- در روش اول که ناشیانه بود تمام ترسیمات گرافیکی صفحه رو در یک آرایه نگهداری می کردم و هر زمان رویداد OnPaint اتقاق می افتاد در OnPaint تابعی رو صدا می زدم و در این تابع تمامی محتویات آرایه ام رو از نو رو صفحه ترسیم می کردم .
    2- در روش دوم که خیلی مفید تر بود تمام فعالیت های گرافیکی کاربر رو Serialize می کردم و باز هم در رویداد OnPaint از اون برای ترسیم مجدد استفاده می کردم .

  17. #17
    نقل قول نوشته شده توسط MH2538
    2- در روش دوم که خیلی مفید تر بود تمام فعالیت های گرافیکی کاربر رو Serialize می کردم و باز هم در رویداد OnPaint از اون برای ترسیم مجدد استفاده می کردم .
    میشه بیشتر توضیح بدین ؟


    .

  18. #18
    کاربر دائمی آواتار dot_net_lover2
    تاریخ عضویت
    اردیبهشت 1383
    محل زندگی
    شیراز
    پست
    324

    Talking

    نقل قول نوشته شده توسط dot_net_lover2
    قبلا با GDI در VB همین مشکل را داشتم ولی autoredraw مربوط به فرم را که true میکردم درست میشد در net. هنوز تست نکردم.
    تستش کردم ٬ رویداد Paint در +GDI دقیقا مثل خصوصیت autoredraw در GDI کار میکنه با این تفاوت که در اونجا فقط این خصوصیت را True میکردیم ولی در اینجا کد مربوطه را در این رویداد مینویسیم.


    using System.Drawing.Drawing2D;


    privatevoid Form1_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
    {
    Graphics myGraphic =
    this.CreateGraphics();
    Pen myPen =
    new Pen(Color.Red,2);
    myGraphic.DrawLine(myPen,0,0,
    this.Width,this.Height);
    }


  19. #19

  20. #20
    متاسفانه برای من رویداد OnPaint درست کار نمی کنه. راه دیگه ای سراغ ندارید؟

  21. #21

  22. #22

    امحتان کن

    اولا که علاوه بر Paint Eventدر Event های Validated ,Activatedهم کد خودت رو بنویس
    نکته: بعد از اینکه روی فرم خودت چیزی کشیدی در این توابع از تابع Update برای فرم استفاده کن

    فکر کنم مشکلت حل بشه ،اگه نشد بگو

تاپیک های مشابه

  1. minimize
    نوشته شده توسط tanhayetanha در بخش مباحث عمومی دلفی و پاسکال
    پاسخ: 3
    آخرین پست: چهارشنبه 17 بهمن 1386, 01:50 صبح
  2. برگشت از حالت minimize فرم
    نوشته شده توسط adabyron در بخش VB.NET
    پاسخ: 2
    آخرین پست: چهارشنبه 02 خرداد 1386, 10:53 صبح
  3. برگشت از حالت minimize فرم
    نوشته شده توسط adabyron در بخش C#‎‎
    پاسخ: 1
    آخرین پست: چهارشنبه 02 خرداد 1386, 10:15 صبح
  4. عمل نکردن Minimize در فرم اصلی
    نوشته شده توسط realman در بخش برنامه نویسی در Delphi
    پاسخ: 6
    آخرین پست: یک شنبه 20 فروردین 1385, 15:15 عصر

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

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