报表打印问题,难!!!

iwin 2000-09-05 07:02:00
有谁知道如何实现套打效果,即已经有现成的表格纸张,要在上面的空白位置定位打印。

1、我想实现在预览时能看到表格线和其它已有的标题,这样能看到打印后总的效果,但真正打印时却不把它打印出来。

2、打印的内容不能超出空白的位置范围

3、我还想实现让用户选择要打印的内容和位置(在同一张纸的版面上)
...全文
268 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Un1 2000-09-07
  • 打赏
  • 举报
回复
1: 通过设置线的visible来显示或者隐藏表格线

private sub SetLinesVisible(byval State as boolean)

dim st as Section
for each st in Sections
dim c as object
for each c in st.controls
if typeof c is DDActiveReports.line then
c.visible = State
end if
next
next
end sub
0xFFCD 2000-09-07
  • 打赏
  • 举报
回复
我建议你去http://lovevb.2699.com,里面有几种方法和控件,要么你去usevb.yeah.net去看看
iwin 2000-09-07
  • 打赏
  • 举报
回复
各位高手,能否给出具体的实现代码?
iwin 2000-09-06
  • 打赏
  • 举报
回复
4_eye_cat:
我是一个vb初学者,能否把你的详细代码E给我
lty 2000-09-06
  • 打赏
  • 举报
回复
换算一下打印的坐标,可以是精确的物理尺寸。
显示预览的底线不送打印机不就成了。
用标签显示待打印的文本,用鼠标拖放定位就行了。
4_Eye_Cat 2000-09-06
  • 打赏
  • 举报
回复
用PICBOX可以实现1、2,但是3相对比较...
我现在的手提上没有完整的源码,所以1没给完整的例程,2也是以前写的,如果你能想到比较好的方法就MAIL会我一个咯。

====不在乎加分,在乎交流======== hehe ! //hand

对于1,我是这样做的:设置一个SUB打印原表单,用另一个SUB处理数据打印
e.g.
sub Export(PrnObj as obj)
if obj is picture then DrawBox
PrnData
if not (obj is picture) then obj.enddoc
end sub

对于2:
Sub OutTextA(pObject As Object, ByVal Xstart As Single, Optional ByVal Xend As Single = -1, Optional ByVal pY As Single = 0, Optional ByVal pFont As String = "宋体", Optional ByVal pFONTSIZE As Single = 9.5, Optional pString, Optional pBold As Boolean = False, Optional pItalic As Boolean = False, Optional pUnderline As Boolean = False, Optional Station As Integer = -1)
Dim X As Single, tw As Single, w As Single
Xstart = Xstart + 0.7
Xend = Xend - 0.5
If Xend = -1 Then Station = -1
pObject.CurrentY = pY
DoEvents
pObject.FontUnderline = pUnderline
pObject.FontItalic = pItalic
pObject.FontBold = pBold
pObject.FontSize = pFONTSIZE
pObject.Font = pFont
pObject.FontSize = pFONTSIZE
tw = pObject.TextWidth(pString)
w = Abs(Xend - Xstart)
Do While tw >= w
pObject.FontSize = pObject.FontSize - 1
pObject.CurrentY = pObject.CurrentY + 0.2
tw = pObject.TextWidth(pString)
Loop
Select Case Station
Case -1
pObject.CurrentX = Xstart
Case 0
pObject.CurrentX = Xstart + (w - tw) / 2
Case 1
pObject.CurrentX = Xend - tw
End Select
pObject.Print pString
End Sub
Un1 2000-09-06
  • 打赏
  • 举报
回复
使用activereport应该可以控制到
xiangood 2000-09-06
  • 打赏
  • 举报
回复
用水晶报表可以完成。不过你要自己找这东西。呵呵....
iwin 2000-09-06
  • 打赏
  • 举报
回复
unl:
能给我一份详细例子吗?因为我很菜:-),拜托了!!!


Grid++Report是一款C/S与B/S集成报表工具,功能全面易学易用。C/S开发适用于VB.NET, C#, VB, VC, Delphi, BCB, 易语言等。B/S开发适用于ASP.NET, ASP, PHP, JSP(Java)等,支持所有操作系统服务器与WEB服务器。开发C/S报表与B/S报表共享相同的开发知识与设计资源。提供独有的报表查询显示功能,让报表查询显示、打印打印预览及数据导出等功能集成一体化实现。轻松实现表格报表、动态报表、多层表头、票据套打、交叉表、统计图表、表中表及各种特殊报表等,是中式报表的最佳开发工具。提供详尽帮助文档与各种编程平台下的丰富例子,安装中包括可直接运行例子程序,安装后即刻体验此报表工具。Unicode编码,多国语言集成支持。历经数年发展,多家有影响力的通用软件厂商选用,用户遍布各行各业,已经成为用户受众面最广的国产报表工具。 Grid++Report 报表组件具有如下特点: 1、支持C/S报表与B/S报表开发,支持全部主流开发语言。C/S开发:VB.NET、C#、VB、VC、Delphi等,B/S开发:ASP.NET、ASP、PHP、JSP等,支持所有WEB服务器。 2、多国语言集成支持与UNICODE编码支持,方便开发多国语言软件。 3、功能强大,稳定高效:实现表格报表、多层表头、票据套打、交叉表等各种报表非常简便;报表完全可编程定义,适合开发通用软件中的动态报表。 4、独有的报表查询显示功能:提供报表查询与输出的集成一次性实现,保证数据不同展现方式的一致性与完整性。 5、报表数据来源丰富:支持绑定(报表数据拉模式)与非绑定(报表数据推模式),一切数据库数据与其它数据都可以作为报表数据源。 6、提供图表功能,包括:饼图、叠加饼图、柱状图、气泡图、折线图、曲线图、散列点图等,支持三维图形。 7、报表数据导出格式丰富,格式包括:Excel、RTF、PDF、图像、HTML、文本,CSV 等。 8、支持数十种一维条码,支持PDF417与QRCode这两种最常用的二维条码,条码打印精度高且易读取。 9、提供脚本编程功能,直接在报表模板中自定义报表行为,采用通用的JScript与VBScript脚本引擎。 10、特有的分组单元格合并功能,轻松实现常见的中国式报表分组在列中展现并垂直居中要求。 11、全中文界面,针对中国式报表进行了很多专门实现,如:表格报表、财务金额线、大写金额、发票圈叉图标、负数红字、多层表头等。很多在国外报表工具中很实现的功能都可以轻易实现。 12、提供丰富交互事件,轻松实现报表行为自定义、穿透(透视)查询和报表交互。 13、重新发布简单:C/S报表只需分发两个DLL文件;B/S报表只要在WEB服务器布署报表网页与报表插件安装包,服务端不需其它配置,客户端零配置。 14、易学易用:完全可视化设计,完善的复制/剪切/粘贴(Copy/Cut/Paste)和恢复重做(Undo/Redo)功能,专业的拖放操作与即时编辑功能。 15、编写了完整详尽的帮助文档。提供了丰富例程,C/S报表包括VB.NET、C#、VB、VC、Delphi、C++Builder、VFP、中文编程易语言,B/S报表包括ASP.NET,ASP,PHP,JSP。 Grid++Report 网站:http://www.rubylong.cn Grid++Report 演示:http://www.rubylong.cn/WebReport
Grid++Report 报表控件适用于VB.NET、C#、VB、VC、Delphi、C++Builder、Foxpro(VFP)、易语言等一切支持 COM 的开发工具。除了提供报表的统计分析、打印打印预览、数据导出等功能,还提供独有的报表查询显示功能,让报表查询显示、打印打印预览及数据导出等功能集成一体化实现。轻松实现通用报表、表格报表、动态报表、多层表头、票据与发票套打、交叉表、表中表及各种特殊报表等。提供详尽帮助文档与各种编程平台下的丰富例子,安装中包括可直接运行例子程序,安装后即刻体验此报表工具。包括简体中文版、繁体中文版与英文版。经过数年的发展,已经被国内多家有影响力的通用软件厂商采用,其用户遍布各行各业,已经成为用户受众面最广的国产报表开发工具。Grid++Report 报表组件具有如下特点:1、适用范围广:VB.NET、C#、VB、VC、Delphi、C++Builder、VFP、易语言等一切支持 COM 的开发工具。2、功能强大:实现普通格式报表、表格报表、多层表头、票据套打、交叉表等各种报表非常简便;报表完全可编程定义,非常适合开发通用软件中的动态报表。3、独有的报表查询显示功能:除了提供报表打印打印预览、数据导出等功能,还提供独有的报表查询显示功能,既提供报表查询与输出的集成一次性实现,又能保证数据的一致性与完整性。4、特有的分组单元格合并功能,轻松实现常见的中国式报表分组在列中展现并垂直居中。5、提供图表功能,在报表中直接实现图表功能。包括:饼图、叠加饼图、柱状图,连线图、散列点图等。6、报表数据导出格式丰富,格式包括:Excel、PDF、图像、HTML、文本,CSV 等。7、提供脚本编程功能,直接在报表模板中自定义报表行为,采用通用的 VBScript 与 JScript 脚本引擎。8、支持参数化报表查询SQL语句,轻松实现动态过滤条件筛选报表数据。9、报表查询显示时提供报表内容文字查找功能。10、全中文界面,针对中国报表进行了很多专门实现,如:报表表格线、财务金额线、大写金额、发票打印圆圈中画叉图标、负数红字显示、多层表头等。很多在国外报表控件中很实现的功能在本报表控件中可以轻易实现。11、组件提供丰富交互事件,轻松实现报表穿透(透视)查询和报表交互。12、重新发布简单:只需分发两个 DLL 文件。13、易学易用:完全可视化设计,完善的复制/剪切/粘贴(Copy/Cut/Paste)和恢复重做(Undo/Redo)功能,专业的拖放操作与即时编辑功能。14、编写了完整详尽的帮助文档。提供了丰富例程,包括VB.NET、C#、VB、VC、Delphi、C++Builder、VFP、中文编程易语言。15、为 Delphi、C++Builder 编写专门的包装类,象使用 VCL 控件一样使用 Grid++Report。16、支持所有常规条形码,打印条形码精度高易读取。

809

社区成员

发帖
与我相关
我的任务
社区描述
VB 多媒体
社区管理员
  • 多媒体
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧