ايران ويج

نسخه‌ی کامل: درخواست کد پرینت گراف در PictureBox برای VB6
شما در حال مشاهده‌ی نسخه‌ی متنی این صفحه می‌باشید. مشاهده‌ی نسخه‌ی کامل با قالب بندی مناسب.
صفحه‌ها: 1 2
با سلام
چند کد برای پرینت PictureBox از اینترنت دانلود کرده ام ولی چون داخل PictureBox
تصویر وجود ندارد چیزی چاپ نمی شود.از PictureBox با دستورات Line برای رسم
یک گراف لگاریتمی استفاده شده است.
لطفا" دوستان در این مورد کمک کنند

[attachment=12090]
يه مثال عملي

[attachment=12093]

اميدوارم كمك كنه
(۱۱-تير-۱۳۹۳, ۱۱:۱۰:۵۸)Di Di نوشته است: [ -> ]يه مثال عملي

تشکر DiDi عزیز
مثال کاملی برای PictureBox است ولی مثل اینکه سوال من کامل نبود
هدف من پرینت گرفتن گراف با چاپگر روی کاغذ می باشد.اگر لطف کنید و مثالی
هم برای این مورد ارئه کنید ممنون خواهم شد.نمونه پیوست را دانلود کردم ولی
برای گراف کار نمی کند

[attachment=12094]
ببخشيد من اولش درست متوجه منظورتون نشده بودم.

راستش راه زياد هست براي پرينت كردنش اما علي الحساب شما اول تصوير داخل اون رو ذخيره كن بعد اون عكس رو چاپ كن

احتمالا اينطوري مشكلت حداقل مقطعي حل بشه، اگر اين جواب بده بعد مي توني هندل پيكچرباكست رو بگيري و تصويرش رو

به صورت بيت مپ بريزي تو حافظه و مجددا اون تصوير رو داخل يه پيكچرباكس ديگه بريزي و بعدش پرينتش كني،‌تو اين حالت چون

داري تصوير بيت مپ رو چاپ مي كني احتمالا مشكلي نداشته باشي، ببين اگر راه حل اولي كه گفتم جواب داد بگو تا يه

سورس نمونه برات بزارم در غير اين صورت سورس برنامه رو بده روش كار كنم، برام جالبه چطوري نمي شه پرينتش كرد!!

راستي براي ذخيره كردن عكس مي توني از دستور savepicture هم استفاده كني
(۱۱-تير-۱۳۹۳, ۱۴:۴۱:۰۴)Di Di نوشته است: [ -> ]راستش راه زياد هست براي پرينت كردنش اما علي الحساب شما اول تصوير داخل اون رو ذخيره كن بعد اون عكس رو چاپ كن
احتمالا اينطوري مشكلت حداقل مقطعي حل بشه، اگر اين جواب بده بعد مي توني هندل پيكچرباكست رو بگيري و تصويرش رو
به صورت بيت مپ بريزي تو حافظه و مجددا اون تصوير رو داخل يه پيكچرباكس ديگه بريزي و بعدش پرينتش كني،‌تو اين حالت چون
داري تصوير بيت مپ رو چاپ مي كني احتمالا مشكلي نداشته باشي، ببين اگر راه حل اولي كه گفتم جواب داد بگو تا يه
سورس نمونه برات بزارم در غير اين صورت سورس برنامه رو بده روش كار كنم، برام جالبه چطوري نمي شه پرينتش كرد!!
راستي براي ذخيره كردن عكس مي توني از دستور savepicture هم استفاده كني

با سلام
دستور Svae را برای picturebox پیدا نکردم و هندل را هم خیلی بلد نیستم
اما به روش کدهای زیر که عمل می کنم مقدار Picture1.Picture برابر صفر
شده است و فقط عدد صفر چاپ می شود.بخشی از سورس را هم که مربوط به ترسیم
گراف میباشد را ضمیمه خواهم کرد.

کد php:
Printer.ScaleWidth 8
Printer
.ScaleHeight 12
Printer
.ScaleLeft 0
Printer
.ScaleTop 0
Printer
.CurrentX 0
Printer
.CurrentY 0
Printer
.Print Picture1.Picture
Printer
.EndDoc 
سلام
محتوی ترسیمی شما در خصوصیت image هست picture1.image و چاپ کنین .
اگر هم خالی شد گزینه autodraw رو برای پیکچر باکس فعال کنید
(۱۱-تير-۱۳۹۳, ۱۷:۳۵:۳۸)hamed_Arfaee نوشته است: [ -> ]سلام
محتوی ترسیمی شما در خصوصیت image هست picture1.image و چاپ کنین .
اگر هم خالی شد گزینه autodraw رو برای پیکچر باکس فعال کنید

با سلام دوست عزیز
طبق دستور شما عمل کردم و مقدار picture1.image برابر 839194835 شد و همین
عدد چاپ می شود.
پس میخواستین چی چاپ بشه ؟ شما دارین به چاپگر میگین مقداری عددی چاپ بشه :)

برای چاپ تصویر از paintpicture باید استفاده کنین .

کد php:
printer.paintpicture 

اینم مطالعه کنین .
(۱۱-تير-۱۳۹۳, ۱۸:۰۱:۱۶)hamed_Arfaee نوشته است: [ -> ]پس میخواستین چی چاپ بشه ؟ شما دارین به چاپگر میگین مقداری عددی چاپ بشه :)
برای چاپ تصویر از printpicture باید استفاده کنین .
کد php:
printer.printpicture 
اینم مطالعه کنین .

درود
printpicture هم کار نکرد.مثال لینک داده شده را در پست قبلی ضمیمه کردم
منتها قبلا" برای picture1.scale عدد منفی داده بودم و خطا می گرفت .
دستور picture1.image که در پست قبل اشاره کردید درست است ولی باید قبلا"
از دستور Picture1.Picture = Picture1.Image اسفاده شود.
با اسفاده از کد های ذیل گراف چاپ می شود ولی فعلا" اندازه آن بزرگتر از
کاغد می باشد.احتمالا" باید از preview استفاده شود یا اینکه در کدها بتوانیم
سایز image را تغییر دهیم و امیدوارم با کمک دوستان این مشکل هم حل شود

کد php:
Printer.ScaleWidth 8
Printer
.ScaleHeight 12
Printer
.ScaleLeft 0
Printer
.ScaleTop 0
Printer
.CurrentX 0
Printer
.CurrentY 0
Printer
.ScaleMode 3
Pic31
.CurrentX 0
Pic31
.CurrentY 0
Picture1
.Picture Picture1.Image
Picture1
.ScaleMode vbPixels
Printer
.PaintPicture Picture1.Picture00
Printer
.EndDoc 

[attachment=12101]
اشتباه تایپی بود . (تاثیرات گشنگیه)

paintpicture درسته که من اشتباهی تایپ کردم printpicture
در ضمن نیازی به انتقال ایمیج به پیکچر نیست .
همین کد هم براتون خروجی میده :
کد:
printer.paintpicture picture1.image ,0 ,0
ظاهرا اين پيكچرباكس كثافت!! محتوايي كه توش كشيده باشيم يا كنترل هاي داخلش رو به پرينتر نمي فرسته حتي به عنوان تصوير ذخيره هم نمي كنه!!

ديگه هرچي ترفند بلد بودم رو تست زدم ،‌دو سه تا كار ديگه هم گوگل كردم اما اصلا جواب گو نبود،‌در نهايت اومدم از محتواي داخلش يه عكس گرفتم فرستادم تو يه

پيكچرباكس ديگه و ازش پرينت گرفتم و خلاص!!

[attachment=12103]
اميدوارم كمك كنه
صفحه‌ها: 1 2