مكتبة دروس شبكة عام كوم

دروس فوتوشوب دروس كمبيوتر دروس فلاش

الصفحة الرئيسية - الدروس - إتصل بنا

 
 شبكة عام كوم : مكتبة الدروس : دروس فيجوال بيسك : (3) الطباعة دون تقرير SQL

(3) الطباعة دون تقرير SQL

 

الطباعة دون تقرير



أخذنا في الدرس الماضي طباعة قاعدة البيانات عن طريق التقرير . والأن سوف نتحدث عن كيفية الطباعة دون أي تقرير أو أدوات أخرى.

عملية الطباعة هذه تعتمد على حلقة الدوران في كل مرة يتم طباعة سجل وإعادة الحلقة على السجل الذي بعده .

باستخدام كائن الطباعة Printer Object

أولاً إفتح المشروع الذي كنت تعمل به في الدروس السابقة


ونحن نعرف أن قاعدة البيانات التي نعمل بها من ثلاث حقول وهي:

tell : رقم الهاتف

name : الإسم

adr : العنوان



والجدول DBGrid1 يتكون من

أعمدة Column وتختصر Col

صفوف Row



والأن سوف نطبع كل عمود وصف عن طريق حلقة التكرار و كائن الطباعة Printer Object



ضع الكود التالي في قسم التصريحات العامة General
Private Sub PrintFont(sFontName As String, _
nFontSize As Integer, _
bFontBold As Boolean, _
bFontItalic As Boolean, _
bFontUnderline As Boolean)
Printer.FontName = sFontName
Printer.FontSize = nFontSize
Printer.FontBold = bFontBold
Printer.FontItalic = bFontItalic
Printer.FontUnderline = bFontUnderline
End Sub

وهو تحديد خصائص الخط الذي سف يظهر على الطابعة.



بعد ذلك ضع الكود التالي : إتجاه الطباعة
Private Sub PrintText(fXCoordinate As Single, _
fYCoordinate As Single, _
sText As String)
Dim lStart As Long
Dim lIndex As Long

Printer.CurrentX = fXCoordinate
Printer.CurrentY = fYCoordinate

lStart = 1
lIndex = InStr(lStart, sText, vbCrLf)
Do While lIndex <> 0
Mid$(sText, lIndex, 2) = ' '
lStart = lStart + lIndex
lIndex = InStr(lStart, sText, vbCrLf)
Loop
Printer.Print sText
End Sub

وبعد ذلك ضع الكود التالي :

Private Sub ResultsPrint()
Dim nLoopCtr As Integer
Dim sOutput(2) As String
Dim nScaleMode As Integer
nScaleMode = Printer.ScaleMode
Printer.ScaleMode = vbInches

'عليك أن تضيف بنفس الطريقة التالية حسب عدد الأعمدة
DBGrid1.Row = 0
DBGrid1.Col = 0
sOutput(0) = DBGrid1.Text
DBGrid1.Col = 1
sOutput(1) = DBGrid1.Text
DBGrid1.Col = 2
sOutput(2) = DBGrid1.Text


'نوع الخط الذي سوف يطبع
PrintFont 'Arial', 16, True, True, False

'العنوان
PrintText 0, 0, 'Print - ' & Me.Caption
PrintFont 'Arial', 12, True, True, False
PrintText 0, 0.5, 'Date: ' & Date$
PrintFont 'Arial', 12, True, False, True

'عليك أن تضيف مثل السطور التالية حسب عدد الأعمدة
PrintText 0, 1, sOutput(0)
PrintText 1, 1, sOutput(1)
PrintText 2, 1, sOutput(2)

PrintFont 'Arial', 12, False, False, False

For nLoopCtr = 1 To mnCurrentRow - 1
DBGrid1.Row = nLoopCtr

'عليك أن تضيف مثل السطور التالية حسب عدد الأعمدة لديك
DBGrid1.Col = 0
sOutput(0) = DBGrid1.Text
DBGrid1.Col = 1
sOutput(1) = DBGrid1.Text
DBGrid1.Col = 2
sOutput(2) = DBGrid1.Text


'عليك أن تضيف مثل السطور التالية حسب عدد الأعمدة لديك
PrintText 0, 1 + (nLoopCtr * 0.25), sOutput(0)
PrintText 1, 1 + (nLoopCtr * 0.25), sOutput(1)
PrintText 2, 1 + (nLoopCtr * 0.25), sOutput(2)
Next nLoopCtr

Printer.EndDoc
Printer.ScaleMode = nScaleMode
End Sub

وفي زر الطباعة ضع الكود التالي:
Call ResultsPrint

بهذا نكون قد أنهينا عملية الطباعة . إنها أفضل من التقرير لقواعد البيانات الكبيرة.



بنهاية هذا الدرس نكون قد أنهينا دروس التعامل مع قواعد البيانات. آمل أن أكون قد حققت الفائدة لكل مستخدم.

والله ولي التوفيق

القسم دروس فيجوال بيسك | عدد زيارات الدرس 203 زياره

 

مكتبة الدروس برمجة bwady.com

 

جميع الحقوق محفوظه لشبكة عام


| صور | بلوتوث | دليل | دليل مواقع | طرب | العاب | العاب بنات | العاب اكشن | العاب تعلميه | اسلامي | البوم صور | صور تصميم | منتديات | افلام | افلام حصريه | افلام مضحكه | مقاطع مضحكه | استار اكادمي | سيارات | بلوتوث مضحك | شعر | الحان | رقص | روايات | اغاني | منتدى | صور ترحيب | ابتسامات | تواقيع | فلاش | مركز تحميل | رفع ملفات | رفع صور | العاب فلاش | مسجات | عالم حواء | مكياج | رجيم | اخبار | دردشة | شات | دردشة صوتيه | شات صوتي | تعارف | فوتوشوب | تحميل فوتوشوب | بلوتوث مضحك | ثيمات | برامج | نغمات | خلفيات | صور رمزيه | علماء العرب | المطبخ |MSN مسنجريات دليل المواقع الاجنبيه