تبلیغات :
ماهان سرور
آکوستیک ، فوم شانه تخم مرغی ، پنل صداگیر ، یونولیت
دستگاه جوجه کشی حرفه ای
فروش آنلاین لباس کودک
خرید فالوور ایرانی
خرید فالوور اینستاگرام
خرید ممبر تلگرام

[ + افزودن آگهی متنی جدید ]




نمايش نتايج 1 به 6 از 6

نام تاپيک: پرینت

  1. #1
    داره خودمونی میشه r.gh45's Avatar
    تاريخ عضويت
    Jul 2008
    پست ها
    75

    پيش فرض پرینت

    سلام
    من به وسیله DrawLine یک سری خطوط در فرمم کشیدم ( یک فاکتور کشیدم) و یکسری label هم وسط این خط ها گزاشتم و می خوام از اون پرینت بگیرم.
    1- این راه , راه منطقی و معمولی هست یا نه؟
    2- اگه هست چه شکلی از اون پرینت بگیرم؟

  2. #2
    داره خودمونی میشه r.gh45's Avatar
    تاريخ عضويت
    Jul 2008
    پست ها
    75

    پيش فرض

    راستی من وقتی کلیدهایی مثل alt,ctrl,start ...... میزنم اشکال گرافیکی که رسم شده پاک می شه ؟؟؟؟؟؟؟؟!!!!!!
    Last edited by r.gh45; 10-08-2008 at 16:50.

  3. #3
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    من به وسیله DrawLine یک سری خطوط در فرمم کشیدم ( یک فاکتور کشیدم) و یکسری label هم وسط این خط ها گزاشتم و می خوام از اون پرینت بگیرم.
    شما میتوانید به کمک کلاسس PrintDocument با همان دستوراتی که با +GDI بر روی فرمتان رسم انجام میدهید، مستقیماً بر روی device پرنتر رسم انجام دهید.

    لازم به توضیح است که استفاده از کلاسس PrintDocument شاید کمی سخت و x و y دار باشد، ولی در زمان اجرا بسیار بسیار سریعتر از نمونه های MsReport و Crystal و... عمل میکند، چون بی واسطه ترین و مستقیم راه به پرینتر در دات نت است.
    forum.p30world.com/showthread.php?t=247655
    forum.p30world.com/showthread.php?t=137511


    ... این راه , راه منطقی و معمولی هست یا نه؟
    زمان نمایش را میگویید یا پرینت؟
    در زمان نمایش در فرم های برنامه، معمولاً برنامه نویسان خود را درگیر ترسیمات نمیکنند و از DataGrid یا انواع کنترلرهای آماده استفاده میکنند.
    ولی اگر صلاح دیدی که ترسیم را مستقیم با PrintDocument انجام دهید، شاید نمایش آن هم به همین روش بد نباشد.
    یعنی ان را مثل یک Preview از کاغذ واقعی بعد از چاپ نشان دهید، به عنوان Print Preview، حتی میتوانید از کنترلر PrintPreviewControl استفاده کنید و با یک کد و یک وراثت از PrintDocument هم در برنامه فاکتور را Preview کنید و هم برای عمل چاپ کد جدید ننویسید.

    در زمان چاپ هم برای پشتیبانی راحت حالات پیچیده و کد نویسی سریع و امکان تبدیل ساده تر با توجه به نیازهای جدید، برنامه نویسان ابزار آماده و بصری مثل کریستال را ترجیح میدهند، چون آنها را در گیر دستورات زیاد و x و y های بسیار در +GDI نمیکند.

    ولی اگر نمایه چاپی فاکتور ساده باشد، پرینت مستقیم با دستورات +GDI و به وسیله کلاسس PrintDocument بد نیست


    راستی من وقتی کلیدهایی مثل alt,ctrl,start ...... میزنم اشکال گرافیکی که رسم شده پاک می شه ؟؟؟؟؟؟؟؟!!!!!!
    اشکال را در چه رویدادی رسم میکنید؟ باید از رویداد Paint استفاده کنید، اگر هم طرح اشکال زیاد و رسم آنها سنگین و پر هزینه باشد، میتوانید DoubleBuffer را فعال کنید.

  4. این کاربر از _H2_ بخاطر این مطلب مفید تشکر کرده است


  5. #4
    داره خودمونی میشه r.gh45's Avatar
    تاريخ عضويت
    Jul 2008
    پست ها
    75

    پيش فرض

    سلام
    من کد زیر رو نوشتم ولی فقط یک صفحه خالی برام پرینت می گیره؟
    اگه لطف کنید و ایرادامو بگید؟
    کد:
    برای مشاهده محتوا ، لطفا وارد شوید یا ثبت نام کنید
    می بخشید میشه از یک قسمت خاص از فرم مثلا از نقطه 100و100 تا نقطه 300و300 پرینت گرفت

  6. #5
    ناظر انجمن .NET Framework _H2_'s Avatar
    تاريخ عضويت
    Feb 2007
    محل سكونت
    یک جایی بین Framework و نارمک!
    پست ها
    4,746

    پيش فرض

    سلام
    jGraph = this.CreateGraphics();
    !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
    اینطوری شما روی فرم ترسیم میکنید، چگونه میخواهید دستور CreateGraphics را اجرا کنید و پرده رسم فرم را بگیرید، ولی روی پرینتر ترسیم شود؟؟؟؟

    شما باید از مقادیر ارسال شده در پارامتر e ورودی استفاده کنید. مثل e.Graphics

    می بخشید میشه از یک قسمت خاص از فرم مثلا از نقطه 100و100 تا نقطه 300و300 پرینت گرفت
    میشود یک کارهایی کرد، حتی خود مایکروسافت هم سرش درد گرفته از این سوالات و یک بسته الحاقی که شامل پرینت از فرم است داده.
    ولی عمل فوق جالب توجه نیست، چون
    1- اصولی نیست میبخشید ولی یک نوع ماست مالی برنامه نویسی است!
    2- dpi مانیتور 72 یا 96 در حالی که یک پرینت با کیفیت باید 300dpi باشد.

  7. این کاربر از _H2_ بخاطر این مطلب مفید تشکر کرده است


  8. #6
    داره خودمونی میشه r.gh45's Avatar
    تاريخ عضويت
    Jul 2008
    پست ها
    75

    پيش فرض

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

Thread Information

Users Browsing this Thread

هم اکنون 1 کاربر در حال مشاهده این تاپیک میباشد. (0 کاربر عضو شده و 1 مهمان)

User Tag List

قوانين ايجاد تاپيک در انجمن

  • شما نمی توانید تاپیک ایحاد کنید
  • شما نمی توانید پاسخی ارسال کنید
  • شما نمی توانید فایل پیوست کنید
  • شما نمی توانید پاسخ خود را ویرایش کنید
  •