vb6中怎么打印窗体中的指定区域?
请问一下,如有下一个窗体内容:
-----------------------------
定单记录
收货人:某某某 发货时间:xxxxxxx
------------------------------
货物名称 单价 数量 小计
xxxxx xx xx xxxxxxx
xxxxx xx xx xxxxxxx
-----------------------------
合计金额:xxxxxx
开票人:某某某 打印人:某某某
确定打印 取消打印
因为不好发图,所以只能打概做了这么一个样式,
打比,这图就是一个FORM1的完全打印样式,但,我不想把“确定打印”和“取消打印”这两个 command控件打印出来,也就是说,我只想打印,FORM1中指定区域里的东西,请问一下,各位高手怎么做阿?
[解决办法]
可以使用API BitBlt
Public Declare Function BitBlt Lib "gdi32" (ByVal hDestDC As Long, ByVal X As Long, ByVal Y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hSrcDC As Long, ByVal xSrc As Long, ByVal ySrc As Long, ByVal dwRop As Long) As Long
BitBlt Printer.hdc, pLeft, pTop, nWidth, nHeight, Form1.hdc, fLeft, fTop, vbSrcCopy
[解决办法]
Private Sub Command1_Click() Command1.Visible = False Command2.Visible = False Me.PrintForm Command1.Visible = True Command2.Visible = TrueEnd Sub
[解决办法]
对这种情况我通常会使用Excel做好模板,然后再将内容后台填入Excel中,然后通过程序调用Excel打印命令打印。一切都在后台完成,打印稳定且效果非常好。
[解决办法]
2L的就是打印之前把按键隐藏起来,然后打印,打印完成,则恢复显示,
使用PrintForm打印窗口,打印效果不是很好