visual basic yazdırma işlemlerine hakim arkadaş var mı?

Kodla Büyü

barissakallioglu

Aktif Üye
Mesajlar
203
Akıllı tahtada kullanmak üzere basit bir program yaptım. ekteki bu programa attığım soruları ayrıca yazdırmak istiyorum fakat bir türlü yapamadım. yaptıklarımda göze hoş gelmiyor. soruları word de hazırlanmış çalışma yaprağı gibi bir çıktı vermesini istiyorum programın ama olmuyor. Ayrıca sadece 1 sayfa çıktı almayı başardım. Raporlama diye bir bölüm var onu da kullanamadım. Bana yardımcı olabilecek bilgisayarcı arkadaş var mı ?
 

Ekli dosyalar

  • test kalıbı.rar
    4.7 MB · Görüntüleme: 51
Hocam probramı incelemedim. Fakat yıllar önce VB ile word ve excele çıktı yaptırmıştır. İzlediğim yolu yazayım siz araştrın deneyin.

VB içinden Word yada Excel app açmak için internette onlarca örnek var. onları inceleyin .
Güzel bir olay MS officede macrolar VB ile yazıldığı için kodları alıp VB içinde kullana biliyorsunuz.

Şimdi word açın macro kaydetmeye başlayın. istediğiniz çekirdek işlemi yaptıktan sonra. Macro nun kodlarını alın ve vb de uygun döngü içine yapıştırın. İşlemin özü bu.

Kısacası wordde macro olarak kaydettiğini işlemi VB de istediğinizi gibi kullanabilirisniz.
Bunu word sayfasını VB içinden açtırdıktan sonra yaprsanız istediğinizi elde edersiniz. Ben yaptım hoşta oldu. Fakat 2001 yılında yapmıştım şimdi elimde kod falan yok :)
 
bayağı bir uğraştım ama en sonunda yapabildim. Benim gibi visual basic net ile ikinci sayfaya çıktı alma, resim veya yazı yazdırma da sorun yaşayan arkadaşlar, boş bir form açarak, forma button1, printdocument1 ve PrintPreviewDialog1 sürüklesin, kod bölümüne de aşağıdaki kodları yazarsa olayı çözer....

Dim pagenumber As Integer = 1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
pagenumber = 1
PrintPreviewDialog1.Document = PrintDocument1
PrintPreviewDialog1.ShowDialog()
End Sub
Private Sub PrintDocument1_PrintPage(ByVal sender As Object, ByVal e As System.Drawing.Printing.PrintPageEventArgs) _
Handles PrintDocument1.PrintPage
Dim peopleNames As New List(Of String)({"Elizabeth", "David", "George"})
Dim personName As String
If pagenumber <= peopleNames.Count Then
personName = peopleNames(pagenumber - 1)
Dim pFont As Font
pFont = New Font("Verdana", 30)
e.Graphics.DrawString(personName, pFont, Brushes.Black, 40, 15)
e.HasMorePages = True
pagenumber += 1
Exit Sub
End If
e.HasMorePages = False
End Sub
 
Geri
Üst