主题:菜鸟的问题1
swordjustin
[专家分:30] 发布于 2005-09-05 13:50:00
怎么样用vb.net 开发一个打印程序 谁能给我一点指导 或者给我一点教材啊 谢谢啊
回复列表 (共7个回复)
沙发
jnmalong [专家分:100] 发布于 2005-09-05 20:43:00
可不可以缓一两天,我还没有看过,看过后就告诉你啦!
板凳
swordjustin [专家分:30] 发布于 2005-09-06 09:12:00
[em6]晕倒
3 楼
宝宝啊呜 [专家分:990] 发布于 2005-09-06 16:24:00
我刚弄完这个东西,你能不能把问题说的明白点?
是打印报表吗?
4 楼
swordjustin [专家分:30] 发布于 2005-09-07 17:08:00
我要做一个付款单打印的程序 功能大概是这样的 窗体上批号文书号的输入等 然后根据这些 从SQL 中找出相应的数据 打出单证 大概是这样的!!!! 我这里只有一个vb的事例 现在要用vb.net 做一个和原来vb 作的那个功能差不多的程序
5 楼
宝宝啊呜 [专家分:990] 发布于 2005-09-08 14:53:00
先新建一个窗体,叫FORM2吧,在里面放入一个CrystalReportViewer1控件
在你的那个查询的窗体中做一个BUTTON1按钮(即打印按钮)
在这个按钮中,添加你所查询出来的所有字段(定义一个DataTable)
然后再建立一个DATASET1,把那些字段加进去。
现在就建立一个CrystalReport1报表(把数据加进去)
在FORM2中写下面这句代码:
Private dtprint As New DataTable
Sub New(ByRef dt As DataTable)
MyBase.New()
InitializeComponent()
dtprint = dt
End Sub
Private Sub printform_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim result As New CrystalReport1
result.SetDataSource(dtprint)
Me.CrystalReportViewer1.ReportSource = result
End Sub
最后把你要打印出来的字段都拖到报表的那个正文上就行了。
我就是用这个方法做的,再难的我就不会了,希望能给你当做一个参考,呵呵。
6 楼
swordjustin [专家分:30] 发布于 2005-09-09 10:47:00
如何"定义一个DataTable" ?
7 楼
宝宝啊呜 [专家分:990] 发布于 2005-09-09 11:30:00
Dim printTable As New DataTable("print")
printTable.Columns.Add("档案馆号", Type.GetType("System.String"))
Dim i As Integer
Dim mydatarow As DataRow
For i = 0 To mydataset.Tables("find").Rows.Count - 1
mydatarow = printTable.NewRow()
mydatarow("档案馆号") = mydataset.Tables(0).Rows(i)("档案馆号")
printTable.Rows.Add(mydatarow)
Next
Dim printform As printform = New printform(printTable)
'这里的printform就是放那个crystalreportviewer控件的窗体
printform.ShowDialog()
我来回复