vb listview分页显示,打印recordset
来源:互联网 发布:log4j2编程 编辑:程序博客网 时间:2024/06/04 20:28
'把执行SQL语句后得到的记录集逐条(含字段名)显示在LISTVIEW控件中
'----------------------------------------------------------------
Public Sub ListUpdate(ByRef rs As Recordset, ByRef lv As ListView)
Dim head As ColumnHeader, Item As ListItem
Dim i As Integer, j As Integer
Dim lvWidth As Integer
lvWidth = lv.Width
'初始化LISTVIEW的某些属性
lv.View = lvwReport
lv.GridLines = True
lv.FullRowSelect = True
lv.ListItems.Clear
lv.ColumnHeaders.Clear
For i = 0 To rs.Fields.Count - 1
Set head = lv.ColumnHeaders.Add
head.Text = rs.Fields(i).Name
head.Width = lvWidth / rs.Fields.Count
Next
For j = 1 To PERPAGE
If rs.EOF Then Exit For
Set Item = lv.ListItems.Add
Item.Text = "" & rs.Fields(0).Value
For i = 1 To rs.Fields.Count - 1
Item.SubItems(i) = "" & rs.Fields(i).Value
Next
rs.MoveNext
Next
End Sub
' 打印
Public Sub PrintRecordset(ByRef recRecordset As Recordset, ByVal strType As String)
Dim LeftMargin As Integer
Dim HeadTopPosition As Integer
Dim FieldNum As Integer
Dim PageCounter As Integer
Dim MyRecordset As ADODB.Recordset
Const FooterTopPosition = 24
Set MyRecordset = recRecordset
PageCounter = 1
' 设 置Printer 对 象 坐 标 的 度 量 单 位 为 厘 米
Printer.ScaleMode = vbCentimeters
LeftMargin = 1.5
HeadTopPosition = 2
' 定 义 打 印 页 左 上 角 的X 坐 标 和Y 坐 标, 通 过 改 变ScaleLeft 和ScaleTop 的 值, 可 改 变 打 印 页 的 左 边 距 和 上 边 距
Printer.ScaleLeft = -LeftMargin
Printer.ScaleTop = -HeadTopPosition
Printer.Font.Name = "Times New Roman"
Printer.Font.Size = 12
Printer.Print "音像店顾客管理系统"
Printer.Print strType
Printer.Print ""
If MyRecordset.EOF And MyRecordset.BOF Then
MsgBox "No Record At Presend!", vbCritical And vbOKOnly, "Print Error"
Exit Sub
End If
MyRecordset.MoveFirst
Do Until Printer.CurrentY > FooterTopPosition
'Print the fields of the recordset in sequence
For FieldNum = 0 To MyRecordset.Fields.Count - 1
Printer.Print MyRecordset.Fields(FieldNum).Name & _
": " & _
MyRecordset.Fields(FieldNum).Value
If Printer.CurrentY > FooterTopPosition Then
Printer.CurrentX = 8
Printer.Print "Page: " & PageCounter
' 创 建 多 页 文 档
Printer.NewPage
PageCounter = PageCounter + 1
End If
Next FieldNum
MyRecordset.MoveNext
If MyRecordset.EOF Then Exit Do
' 在 记 录 之 间 空 一 行
Printer.Print ""
Loop
'Print the Page number as a footer
Printer.CurrentX = 8
Printer.CurrentY = FooterTopPosition
Printer.Print "Page: " & PageCounter
' 将 输 出 送 到 打 印 机
Printer.EndDoc
End Sub
- vb listview分页显示,打印recordset
- vb ListView数据库分页显示
- ASP分页显示Recordset数据
- ASP分页显示Recordset数据
- ASP分页显示Recordset数据
- ListView分页显示数据
- ListView 分页显示
- ListView的分页显示
- android ListView分页显示
- Android ListView分页显示
- ListView 分页显示
- ListView分页显示
- ListView分页显示
- Android ListView分页显示
- ListView分页显示
- VB Recordset 对象
- vb中recordset的用法
- vb用xml传输recordset
- 在Emacs下用C/C++编程
- 提取峰值
- C# 文件操作
- dd
- happy
- vb listview分页显示,打印recordset
- windows 界面
- [转贴] ASP.Net C#2.0全能数据库组件 (含下载实例源码地址)
- VB.Net程序中对.Config文件读写的类
- 一个项目分成两个项目来写时spring配置文件
- java操作修饰Excel字体大小合并单元格背景色列宽
- 昨晚花了一晚上安装了bind 9(under Solaris)
- 帮你免于失业的十大软件技术
- .NET2.0隐形的翅膀,正则表达式搜魂者