PDA

View Full Version : حذف شدن line



star_n
چهارشنبه 19 تیر 1387, 13:24 عصر
چرا وقتی رو form یک لاین میکشیم
اگه یه صفحه دیگر(یک برنامه دیگر) بیاد روش یا روی یه قسمتی اش اون قسمت از line که زیر صفحه بوده حذف می شه؟

mehdi.mousavi
چهارشنبه 19 تیر 1387, 13:31 عصر
چرا وقتی رو form یک لاین میکشیم
اگه یه صفحه دیگر(یک برنامه دیگر) بیاد روش یا روی یه قسمتی اش اون قسمت از line که زیر صفحه بوده حذف می شه؟


سلام.
برای اینکه WM_PAINT به Window شما ارسال میشه و شما در قبال این پیام، عمل مناسب (کشیدن خط) رو انجام نمیدین. محل صحیح برای کشیدن خطی که می گید در متود OnPaint هستش. با override کردن این متود، ابتدا خط مورد نظر رو بکشید، سپس متود معادل در base class رو call کنید.

star_n
یک شنبه 23 تیر 1387, 08:48 صبح
می شه بیشتر توضیح بدین ؟
WM_PAINT چیه؟

mehdi.mousavi
یک شنبه 23 تیر 1387, 12:43 عصر
می شه بیشتر توضیح بدین ؟ WM_PAINT چیه؟


سلام.
WM_PAINT پیامی هستش که ویندوز به نشانه درخواست refresh شدن به پنجره مورد نظرش میفرسته. در C#، پس از دریافت این پیام، متود OnPaint شما فراخوانی میشه، و به شما این فرصت داده میشه تا (بعنوان مثال) خط مورد نظر خودتون رو بکشید. چون شما خارج از این متود (نمیدونم کجا اینکارو کردین) اقدام به کشدین خط میکنید، طبیعتا با درخواست Paint بعدی خط شما پاک خواهد شد.