vb 打印问题

我想做一个VB的打印程序,能够实现如下功能:点一下打印按钮,就把当前窗口下的所有数据都传送到另一个设置好格式的页面,然后打印.现在我不知道如何做那个设置好格式的页面,是要... 我想做一个VB的打印程序,能够实现如下功能:
点一下打印按钮,就把当前窗口下的所有数据都传送到另一个设置好格式的页面,然后打印.
现在我不知道如何做那个设置好格式的页面,是要新建一个窗体呢,还是新建一个报表,报表的话如何设置,需要添加VB自带的什么控件?请说详细点!
jimmy2008ss 那个答案太模糊了,我是新人,看不明白,能不能解释的更详细点!
比如:'在此放置代码,将数据发送到打印机。 代码应该怎么写!我要传送的数据有普通的TEXT.TEXT,也有datagrid控件里的几行数据!
ljl88900 能否写的再详细一点,或者给我一个实例,因为我是新人,所以还是不太明白应该怎么做!比如说WORD模板怎样建,大体应该是什么样子的,传送过去的数据因为每个要打印的内容都不一样,如何实现模板打印时有需要的显示,不需要的不显示.
展开
 我来答
ljl88900
2008-11-25 · TA获得超过2661个赞
知道大有可为答主
回答量:2197
采纳率:100%
帮助的人:2631万
展开全部
根据你的补充,我给你上传了一个利用word进行打印的实例,请查收:http://www.fileurls.com/download.ashx?id=ixosyo

我的经验是:VB与WORD结合实现完美的打印输出。
一、设计打印模板。由于WORD具有强大的编辑排版功能,你可以用它来设计打印输出的格式样板。由于即见即所得,所以显得十分容易。至于具体如何设计,请根据实际情况,在此略。
二、对word进行查找替换。当你要打印输出时,必须复制一份WORD模版文件,作为临时文件,然后打开,再把窗体内的有关数据替换进去,为下一步的打印工作做好准备。举例如下:
请先引用word控件。
dim filename as string '定义文件路径
filename="C:\temp.doc"
Dim wodapp As Word.Application
Set wodapp = New Word.Application
wodapp.Application.Documents.Open FileName:=filename '打开文件

With wodapp.Selection.Find '进行查找替换
.ClearFormatting
.Text = "需要查找的内容"
.Replacement.ClearFormatting
.Replacement.Text = "需要替换的内容"
.execute Replace:=wdReplaceAll, Forward:=True, Wrap:=wdFindContinue '设置替换方式.(整文查找替换)
End With (如多处需要替换,则可以将本with块多次使用)

wodapp.quit
set wodapp=nothing

三、实现打印输出。这部分功能非常简单,代码如下:
dim filename as string '定义需要打印的文件绝对路径(包含文件名)
filename="C:\temp.doc"
Dim wodapp As Word.Application '创建word组件
Set wodapp = New Word.Application
wodapp.Application.Documents.Open FileName:=filename '打开指定位置处的word文件
wodapp.ActiveDocument.PrintOut '使用组件打印方法将其打印.
wodapp.quit '退出word,(这时进程管理器里将看不到word进程)
set wodapp=nothing

如上代码便可将word文件发送到打印机.如果打印机状态不能工作,程序也不会崩溃,可引用api对打印机进行查询状态,做出问题处理。根据每人需要,此处不再多叙。
jimmy2008ss
2008-11-23 · TA获得超过356个赞
知道答主
回答量:167
采纳率:0%
帮助的人:64.8万
展开全部
方法1:
调用CommonDialog控件

打印 showpriner

方法2:
要显示“打印”对话框
1. 通过设置相应的“打印”对话框属性,为对话框设置所需缺省设置值。例如,为在显示对话框时在“份数”框中显示 2,应将 Copies 属性设置为 2:
CommonDialog1.Copies = 2
2. 用ShowPrinter方法显示“打印”对话框。
用户单击“Command1”命令按钮时,下列代码将显示“打印”对话框:
Private Sub Command1_Click ()
Dim BeginPage, EndPage, NumCopies, Orientation. i
'将 Cancel 设置成 True。
CommonDialog1.CancelError = True
On Error GoTo ErrHandler
'显示“打印”对话框。
CommonDialog1.ShowPrinter
'从对话框中获取用户选定数值。
BeginPage= CommonDialog1.FromPage
EndPage = CommonDialog1.ToPage
NumCopies= CommonDialog1.Copies
Orientation=CommonDialog1.Orientation
For i = 1 to NumCopies
'在此放置代码,将数据发送到打印机。
Next
Nxit Sub
ErrHandler:
'用户按下了“取消”按钮。
Exit Sub
End Sub

试试吧 行的话给分 哈哈
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
古竹斋
2008-11-29 · TA获得超过1350个赞
知道小有建树答主
回答量:1244
采纳率:40%
帮助的人:251万
展开全部
直接用priner对象打印出你需要的格式.
基本使用方法:
priner.ScaleMode = 6 ''以毫米为单位
Printer.FontSize = 24 ''设置字号
Printer.Font = "隶书" ''设置字体

Printer.CurrentX = 50 ''定位X/Y坐标
Printer.CurrentY = 25
Printer.Print "欢迎使用" ''打印内容,可用变量代替

Printer.Line (20,26)-(60,26) ''画线
Printer.EndDoc '将打印内容送打印机

网上搜索一下,能找到很多代码.
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7fbc1e5b4
2008-11-24 · 超过25用户采纳过TA的回答
知道答主
回答量:80
采纳率:0%
帮助的人:0
展开全部
Visual Basic6.0下数据库报表制作技巧http://www.3edu.net/lw/xxjslw/lw_43346.html
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hgl84804357
2008-11-24 · TA获得超过240个赞
知道答主
回答量:180
采纳率:0%
帮助的人:117万
展开全部
哇,第一次看到分给这么高的,俺不太懂,给楼上的加点油!!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式