الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كود الطباعه يعمل لكن الجزء On Error لا يعمل

مغلق
بدأه emi في 7 يناير 2006 · 4 رد · 767 مشاهدة · في لغة Ms Visual Basic 6 وما قبلها من إصدارات
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

في هذا الكود لو كانت الطابعه مفتوحه يعمل ويطبع الورقه لكني ان كانت مقفله او غير موجوده يعطيني خطا .. اريده في الحاله الثانيه ان يعطيني الرساله المكتوبه في الكود .. ما الخطا الذي اقترفته

مع الشكر

private Sub Command2_Click()

On Error Resume Next
Printer.PaintPicture Picture1.Picture, 0, 0, _
Picture1.Width, Picture1.Height

Next:
msg "you do not have printer"
End Sub
#2

طبعا لن يشتغل هذا الكود

اولا لأن لا فائدة من التعبير

Next:

بما انك كتبت التعبير On Error Resume Next

فالبرنامج عند حدوث أي خطأ في أي سطر من الكود ينتقل تلقائيا الى السطر الموالي و عندما يصل الى السطر Next يحدث خطأ لأن Next من الكلمات المحجوزة فيعطيك خطأ على عدم وجود For

بالنسبة للحل هناك طريقتين اولها هو حذف السطر Next:

أما بالنسبة للحل الثاني و الذي أضنك كنت تريد عمله و هو التالي :

Private Sub Command1_Click()
On Error GoTo Error
Printer.PaintPicture Picture1.Picture, 0, 0, _
Picture1.Width, Picture1.Height

Error:
MsgBox "you do not have printer"
End Sub

و السلام عليكم

#3

أخ crazy-man لقد نسيت وضع Exit Sub قبل الفقرة الخاصة بالError حتى لا يقوم بتنفيذها في جميع الأحوال

Private Sub Command1_Click()
On Error GoTo Error
Printer.PaintPicture Picture1.Picture, 0, 0, _
Picture1.Width, Picture1.Height
Exit Sub
Error:
MsgBox "you do not have printer"
End Sub

تم تعديل هذه المشاركة بواسطة aroma_kt في 7 يناير 2006 في 15:12

#5

اشكرك الجميع على الشرح .. بارك الله فيكم وجزاكم كل الخير

هذا الموضوع مغلق.

مواضيع مشابهة