TlistView 的内容如何打印(200分)

  • 主题发起人 主题发起人 WHY&SONG
  • 开始时间 开始时间
W

WHY&SONG

Unregistered / Unconfirmed
GUEST, unregistred user!
用什么方法可以将 Tlistview 控件中的内容直接打印出来,最好支持页面设置
或打印预览.
 
你的listview带滚动条或背景吗?带背景的话比较麻烦,
 
无背景,但带滚动条.
 
那么listview的状态是什么呢?icon list smallicon 或是全都要,还有它带不带
icon(或imagelist关联)?
 
1、用不用打印图LagerImages & SmallImages.
2、Item的Data?
3、还是直接打印一个样子象屏幕截图一样?
 
我把问题说仔细些吧.我写一个程序,explore外观,左面Treeview 显示部门等情况,右边的 listview 显示部门中的人员等情况 .我想把listView 的内容直接打印
出来以替代报表.因为 listview 的内容涉及到十几个数据库表,我不愿一行一行
写代码.画报表也嫌麻烦.所以想找个办法把 listview 的内容直接打印出来.
listview 的内容全部以vsReport方式显示,类似于(DBGRID中的数据显示)
 
获取listview的句柄,用屏幕抓图的方法应该可以解决
 
你是想打左边的,还是右边的,还是两边?还有你打印出来的大致样式是什么样的?
 
我已经给你发了个例子,不知能否达到你的要求。
 
1、建一个临时表(或者用TClientDataSet建一个内存表),
ListView中的列对应到字段,没问题吧?

2、把数据拷贝到这个表内
ListView中的Items对应到记录,没问题吧?

3、打印表内数据
Quick Report打印一个DataSet,没问题吧?
 
不如就用一个TRichEdit控件,首先将TListView变成行,最好先算出每
列的最大宽度,用这个宽度来保证每列一样宽,将每行数据转换成字符串,
然后送入TRichEdit控件中,然后用TRichEdit的print方法将结果打印
出来。
 
木头一点都不木,高见!
 
谢谢各位,让我试试你们的方法.
 
多人接受答案了。
 
后退
顶部