السلام عليكــم ورحمـة الله وبركاتــه ،،
إخواني الاعزاء اريد كود يعطي امر لطابعه بطباعة تقرير مثلاً بالـ VB
و شكراً لحسن تعاونكم
السلام عليكــم ورحمـة الله وبركاتــه ،،
إخواني الاعزاء اريد كود يعطي امر لطابعه بطباعة تقرير مثلاً بالـ VB
و شكراً لحسن تعاونكم
تم تعديل هذه المشاركة بواسطة S_ISLAM في 23 يونيو 2009 في 09:41
هذا كود مبسط و مختصر لطباعة نص تتم قراءته من قرص صلب أو ما شابه. هذا الكود لا يستعمل Form و إنما نافدة Console و ذلك لتبسيط الكود قدر الإمكان.
Imports System
Imports System.IO
Imports System.Drawing
Imports System.Drawing.Printing
Imports System.Windows.Forms
Module Module1
'لحفظ النص لحين وقت الطبع
Dim printText As String
'نقطة الدخول إلى البرنامج
Sub Main()
'الوسيط بين البرنامج و الطابعة
Dim printDoc As New PrintDocument()
' Handler to the Sub that will be called for every page to print
AddHandler printDoc.PrintPage, AddressOf printDoc_PrintPage
Dim openFileDlg As New OpenFileDialog()
openFileDlg.Filter = "Text files (*.txt)|*.txt"
If openFileDlg.ShowDialog = DialogResult.OK Then
'قراءة النص و حفضه للطباعة
Dim txtStream As New System.IO.StreamReader(openFileDlg.FileName)
printText = txtStream.ReadToEnd
txtStream.Close()
'طباعة النص
printDoc.DocumentName = openFileDlg.FileName
printDoc.Print()
End If
End Sub
Private Sub printDoc_PrintPage(ByVal sender As Object, ByVal ev As PrintPageEventArgs)
'النص فارغ إذن خروج
If printText = "" Then Exit Sub
'الخط الذي سيستعمل للطباعة
Dim fnt As New Font("Arial", 11.0F, FontStyle.Regular, GraphicsUnit.Point)
'طباعة النص داخل الإطار المخصص للصفحة
ev.Graphics.DrawString(printText, fnt, Brushes.Black, ev.PageSettings.Bounds)
fnt.Dispose()
End Sub
End Module