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

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

  1. #1

    پرینت فرم

    سلام
    چطور از فرمها پرینت بگیرم ؟
    من هر کاری میکنم کاراکترهای حروفی که توی ادیت باکسها نوشته شده اند رو پرینت نمیگیره . ولی اعداد داخل ادیت باکس رو پرینت میگیره و اعداد و حروفی رو که بوسیله label توی فرم قرار دادم رو هم پرینت میگیره .

  2. #2
    ساده ترین راه با
    Form1.Print;

    :lol: :lol: :lol:

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

  4. #4
    کاربر دائمی آواتار SReza1
    تاریخ عضویت
    تیر 1382
    محل زندگی
    کنار تعدادی تراریوم و کاکتوس!
    پست
    702

    جواب

    میتونی از خاصیت canvas استفاده کنی!! مثلا اینکه
    form1.canvas رو در canvas پرینتر کپی کنی

  5. #5
    آقا رضا میشه بگید چطور این کار رو انجام بدم ؟ :oops:

  6. #6
    سلام
    مشکلم حل شد . کلا نمیتونسته محتویات dbeditbox ها رو چاپ کنه . :shock:
    اما یه مشکل دیگه :
    وقتی برنامه اجرا میشه یه پرینت از همون صفحه ای که میخوام گرفته میشه .
    واضحتر بگم : مثلا من برای صفحه صدور فاکتور یه دونه دستور print گذاشتم اما وقتی برنامه حسابداری باز میشه یه صفحه خالی فاکتور چاپ میشه !! :shock: :shock: :shock:
    اگه ممکنه کمکم کنید . :cry: :cry: :cry:

  7. #7
    کاربر دائمی آواتار SReza1
    تاریخ عضویت
    تیر 1382
    محل زندگی
    کنار تعدادی تراریوم و کاکتوس!
    پست
    702

    جواب

    مثلا می خواهی محتویات فرم رو در داخل image کپی کنی
    image1.Width := Form1.Width;
    image1.Heigth := Form1.Heigth;

    Image1.Canvas.Copyrect(Rect(0,0,Form1.Width,Form1. Heigth),Form1.Canvas,Rect(0,0,Form1.Width,Form1.He igth))


    این کار هر چی در فرمت داری به روی image میریزه! حالا می تونی به جای image از prinatre استفاده کنی

    Printre.canvas......

    امیدوارم مشکلت حل بشه!! :D

  8. #8
    کاربر دائمی
    تاریخ عضویت
    مرداد 1382
    محل زندگی
    تهران
    پست
    484

    Re: جواب

    نقل قول نوشته شده توسط SReza1
    مثلا می خواهی محتویات فرم رو در داخل image کپی کنی
    image1.Width := Form1.Width;
    image1.Heigth := Form1.Heigth;

    Image1.Canvas.Copyrect(Rect(0,0,Form1.Width,Form1. Heigth),Form1.Canvas,Rect(0,0,Form1.Width,Form1.He igth))


    این کار هر چی در فرمت داری به روی image میریزه! حالا می تونی به جای image از prinatre استفاده کنی

    Printre.canvas......

    امیدوارم مشکلت حل بشه!! :D
    متد Print فرم هم دقیقا" همین کار رو می‌کنه بدین صورت که اول تصویر فرم رو بصورت Bitmap می‌گیره و بعد اون رو به DIB Bitmap تبدیل می‌کنه و این تصویر رو رو Canvas پرینتر می‌کشه.
    تبدیل Bitmap به DIB Bitmap برای اینه که درایور بعضی از چاپگرها تصویر با فرمت دیگه‌ای رو قبول نمی‌کنند.

    DIB = Device Independent Bitmap

  9. #9
    سلام
    ممنون از راهنماییهاتون .
    اما مشکلات من مثل اینکه نمیخواد تموم بشه . :cry: :cry:
    حالا تا اونجایی که مانیتور نشون میده پرینت میشه و بقیه فرم .... :?:
    تورو خدا کمکم کنید . :cry:
    دیگه کم کم داره اعصابم رو خورد میکنه . :evil: :evil: :x :evil: :evil:

  10. #10
    کاربر دائمی آواتار SReza1
    تاریخ عضویت
    تیر 1382
    محل زندگی
    کنار تعدادی تراریوم و کاکتوس!
    پست
    702

    جواب

    سلام
    جناب delphi area همیشه درست میگه :oops:

  11. #11
    نقل قول نوشته شده توسط tazekar
    حالا تا اونجایی که مانیتور نشون میده پرینت میشه و بقیه فرم .... :?:
    خوب این موضوع در راهنمای دلفی نیز گفته شده است :) و چون در این روش از Form عکس گرفته و پرینت می شود فقط قسمتی که دیده می شود پرینت می شود
     Call Print to print the form. Print uses the GetFormImage method to obtain a bitmap of the form and draws that to the printer ’ s HDC. 

    :!: برای پرینت کردن یک روش قویتر ولی یک کم مشکل تر نیز وجود دارد برای اطلاعات بیشتر در باره این روش به راهنمای دلفی موضوع با عنوان
    TPrinter,overview :arrow:
    مراجعه کنید

  12. #12
    آیا بهتر نیست بجای چاپ فرم یک صفحه گزارش طراحی کنید؟

  13. #13
    ممکنه ساده تر باشه اما حالا میخوام بدونم اینو چکارش باید کرد :wink:
    در ضمن با report هم یه کمی مشکلات دارم . :cry:

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

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