vb中listview的使用案例
vb,读取excel表格数据并在listview控件中显示

竭诚为您提供优质文档/双击可除vb,读取excel表格数据并在listview控件中显示篇一:Vb用listView读取excel实例Vb用listView读取excel实例第一步:用excel创建成绩表,如下图示例第二步:打开Vb6创建一工程、标准窗口第三步:引用excel,在菜单栏,工程——引用,如下图第四步:在工具栏加载控件microsoftwindowscommoncontrols6.0(sp6),如下图第五步:在标准窗口加入listview控件,控件属性设置如下图在“列首”标签添加字段名,如下图第五步:编写代码dimxlappasexcel.applicationprivatesubForm_load()setxlapp=createobject("excel.application")xlapp.Visible=Falsexlapp.workbooks.openapp.path查找列中所有的单元格setlitem=listView1.listitems.add()litem.text=xlapp.Range("a"checkifemptydataRowblnnullRow=trueForinti=1to10iftrim$(objimportsheet.cells(intcounti,inti).Value) ""thenblnnullRow=Falseendifnextinti若不是空行,则进行读取动作,否则继续向后遍历excel 中的行ifblnnullRow=Falsethen获取单元格中的数据,做有效性check,并将合法数据创建为实体存入对象数组中objimportsheet.cells(intcounti,1).Value……endifnextintcounti5、退出excel进程,并关闭excel相关操作对象objexcelFile.quitsetobjworkbook=nothingsetobjimportsheet=nothingsetobjexcelFile=nothing篇三:vb代码读取excel数据源取得excel文件所有内容:addmicrosoftadofrist.privatesubcommand2_click()dimadoconnectionasnewadodb.connectiondimadoRecordsetasnewadodb.Recordsetcommondialog1.showopenoledb+odbcdriver方式:adoconnection.open"dataprovider=msdasql.1;driver=mi crosoftexceldriver(*.xls);dbq=e:\temp\book2.xls"microsoft.jet.oledb.4.0方式,(建)adoconnection.open"provider=microsoft.jet.oledb.4.0 ;persistsecurityinfo=False;datasource="extendedproperties=excel8.0;hdR=yes"adoRecordset.open"select*from[sheet1$]",adoconnecti on,adopenkeyset,adlockoptimisticdebug.printadoRecordset.RecordcountdimiasintegerdountiladoRecordset.eoFFori=0toadoRecordset.Fields.count-1debug.printadoRecordset.Fields.item(0).namedebug.printadoRecordset.Fields.item(0).ValuenextiadoRecordset.movenextloopendsub但还不知道如何取得sheet名,不好意思,那位老鸟知道请告知,谢谢sheet名用excel.application对象dimxlappasexcel.applicationdimxlbookasexcel.workbooksetxlapp=newexcel.applicationsetxlbook=xlapp.workbooks.open("c;\123.xls"))Fori=1tointsheetsumstrtemp=xlbook.worksheets(i).name。
如何在VB中利用listview快速显示10000以上的记录

如何在VB中利用listview快速显示10000以上的记录如何在VB中利用listview快速显示10000以上的记录listview显示起来美观,可就是速度不行比如下面的方式For i = 0 To 10000ListView1.ListItems.Add ListView1.ListItems.Count + 1, , ListView1.ListItems.Count + 1ListView1.ListItems.Item(ListView1.ListItems.Count).SubItem s(1) = ("你好啊")ListView1.ListItems.Item(ListView1.ListItems.Count).SubItem s(2) = ("你好啊")ListView1.ListItems.Item(ListView1.ListItems.Count).SubItem s(3) = ("你好啊")Next i用逐个添加速度很慢,看到一个avafind软件,几万行的数据显示出来只要零点几秒请问各位高手如何在VB中实现listview的快速显示呢?只要没有停顿感就好。
如果能解决,可再加100分------解决方案--------------------------------------------------------其实很简单,有种virtual模式就可以的啊,你可搜下相应的资料:)------解决方案--------------------------------------------------------先禁止列表重绘,再添加数据自己添加 LockWindowUpdate api,然后这样:LockWindowUpdate hWndListViewfor xxx。
给列表添加数据nextLockWindowUpdate 0&------解决方案--------------------------------------------------------LockWindowUpdate禁止LV控件重绘,然后开一个循环,不要加DoEvents,就直接添加全部数据,这样速度有显著提升。
VB NET中使用ListView控件的简单例子

aHero = New hero
iItem = New ListViewItem
aHero.myName = firstName & i.ToString
aHero.myAge = System.Math.Round(rd.NextDouble * 100, 0)
s_like = value
End Set
End Property
End Class
'''
'''公共属性
'''
'''
Dim arrLike() As String = {"杀人", "放火", "吸毒", "抢劫", "盗窃", "上吊",
"自虐", "赌博", "偷窥", "飚车"}
Dim heroList As New SortedList
s_flag = True
Dim iItem As New ListViewItem
Dim aHero As New hero
Dim rd As New System.Random(Environment.TickCount * maxNumber)
aHero.myName = firstName & maxNumber.ToString
Me.lv1.CheckBoxes = True
Dim i As Integer
VBA实战系列(ListView控件)

VBA实战系列(ListView控件)VBA项目实战__ListView控件应用ListView控件是一款非常优秀的表格控件,被广泛应用于VBA项目。
VBA使用者熟练地掌握此控件的用法,不仅能大大地增加自己学习VBA的兴趣,而且对实际工作也有很好的帮助。
一、Excel基础数据二、实现效果我们要通过VBA控件list view,实现如下图示效果三、实现过程(一)添加listview控件1.打开VBE编辑器,新建窗体flist2.添加listview控件。
在工具箱中选择listview控件放入窗体。
如工具箱中没有该控件,则应查找注册MSCOMCTL.OCX 文件。
我们可以按照以下方法进行注册:1)将文件解压到“C:\WINDOWS\system32”(WindowsXP);2)单击【开始】|【运行】命令,键入“regsvr32 C:\WINDOWS\system32 \MSCOMCTL.OCX ”(WindowsXP)”进行注册。
(二)添加代码1.添加表头Private Sub UserForm_Initialize()ListView1.ColumnHeaders.Add , , "日期", 64, 0ListView1.ColumnHeaders.Add , , "姓名", 54, 2ListView1.ColumnHeaders.Add , , "性别", 42, 2ListView1.ColumnHeaders.Add , , "年龄", 54, 2ListView1.ColumnHeaders.Add , , "联系方式", 54, 2ListView1.ColumnHeaders.Add , , "电话", 99, 2ListView1.ColumnHeaders.Add , , "诊断", 54, 2ListView1.ColumnHeaders.Add , , "手术名称", 86, 2ListView1.View = lvwReport '显示格式为报表格式ListView1.FullRowSelect = True '允许整行选中ListView1.Gridlines = True '显示网格线' ListView1.Sorted = True '排序End Sub以上代码中ListView1.ColumnHeaders.Add , , "日期", 64, 0中的64代表该表头字段的宽度,0代表居左显示方式。
listview使用实例

窗体代码如下:Option ExplicitPrivate Sub Combo1_Click()Select Case Combo1.ListIndexCase 0:ListView1.Arrange = 0 'lvwNoArrange Case 1:ListView1.Arrange = lvwAutoLeft Case 2:ListView1.Arrange = lvwAutoTop End SelectEnd SubPrivate Sub Command2_Click()Dim list_item As ListItemSet list_item = ListView1.ListItems.Add(, , "101包房")list_item.Icon = 1list_item.SmallIcon = 1list_item.SubItems(1) = "可供"list_item.SubItems(2) = "100元人民币"End SubPrivate Sub Form_Load()Dim column_header As ColumnHeaderSet column_header = ListView1.ColumnHeaders.Add(, , "餐台号", TextWidth(Space(20) & "餐台号")) Set column_header = ListView1.ColumnHeaders.Add(, , "状态", TextWidth(Space(20) & "状态")) Set column_header = ListView1.ColumnHeaders.Add(, , "消费金额", TextWidth(Space(20) & " 消费金额"))Set column_header = ListView1.ColumnHeaders.Add(, , "进店时间", TextWidth(Space(20) & "进店时间"))Set column_header = ListView1.ColumnHeaders.Add(, , "已用时间", TextWidth(Space(20) & "已用时间"))Set column_header = ListView1.ColumnHeaders.Add(, , "备注", TextWidth(Space(60) & "备注")) mnuViewIcon_Click lvwReportEnd SubPrivate Sub ListView1_DragOver(Source As Control, x As Single, y As Single, State As Integer) MsgBox "66"End SubPrivate Sub ListView1_ItemClick(ByVal Item As MSComctlLib.ListItem)StatusBar1.Panels(2) = Item.TextStatusBar1.Panels(3) = ItemEnd SubPrivate Sub ListView1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)If Button = 2 ThenPopupMenu mnuViewEnd IfEnd SubPrivate Sub mnuAdd_Click()Dim list_item As ListItemDim i As IntegerFor i = 1 To 9Set list_item = ListView1.ListItems.Add(, , "10" & i & "包房")list_item.Icon = 1list_item.SmallIcon = 1list_item.SubItems(1) = "可供"list_item.SubItems(2) = i & "100元人民币"NextEnd SubPrivate Sub mnuViewIcon_Click(Index As Integer)Dim i As IntegerListView1.View = IndexFor i = 0 To 3If i = Index ThenmnuViewIcon(i).Checked = TrueElsemnuViewIcon(i).Checked = FalseEnd IfNext iEnd Sub。
vba listview控件用法例子

vba listview控件用法例子VBA Listview控件用法示例在VBA编程中,Listview控件是一种非常有用的工具,它可以用于显示和管理大量数据。
Listview控件提供了一种可视化的方式来展示数据,并且可以方便地对数据进行排序、筛选和编辑。
以下是一个简单的示例,演示了如何使用VBA中的Listview控件。
首先,我们需要在VBA中添加Listview控件。
步骤如下:1. 打开VBA编辑器(按下Alt+F11)。
2. 在工具箱中找到"Microsoft Windows Common Controls",如果没有找到,可以右键点击工具箱,选择"其他控件",找到并勾选它。
3. 在VBA编辑器中的工具箱中,单击鼠标右键,选择"附加",然后选择"Microsoft Windows Common Controls X.X(其中X.X表示版本号)"。
4. 在工具箱中找到并单击"Listview"控件,然后在用户窗体上绘制一个Listview 控件。
接下来,我们可以使用以下代码示例来演示Listview控件的用法:```vbaPrivate Sub UserForm_Initialize()Dim i As Integer' 设置Listview控件的列标题With ListView1.View = lvwReport.ColumnHeaders.Add , , "姓名".ColumnHeaders.Add , , "年龄".ColumnHeaders.Add , , "性别"End With' 向Listview控件中添加数据With ListView1.ListItemsFor i = 1 To 10' 添加行Set itm = .Add(, , "姓名" & i)' 添加子项itm.SubItems(1) = "年龄" & iitm.SubItems(2) = "性别" & iNext iEnd WithEnd Sub```以上代码首先在用户窗体初始化事件中设置了Listview控件的列标题。
vb.net listview例子

中ListView控件使用详解及案例在中,ListView控件是一个非常强大的控件,它允许用户在Windows窗体应用程序中显示列表数据。
通过使用ListView控件,您可以轻松地展示、编辑和操作数据,并且可以根据需要自定义其外观和行为。
下面将详细介绍ListView控件的使用方法和案例。
一、添加ListView控件首先,您需要在Windows窗体中添加ListView控件。
可以通过拖拽ListView控件从工具箱将其添加到窗体上。
二、设置ListView属性在添加完ListView控件后,您需要设置其属性以定义其外观和行为。
以下是一些常用的属性:1.View:设置ListView的显示方式,可以选择大图标、小图标、列表或详细列表等。
2.FullRowSelect:设置是否选择整行。
3.Sorted:设置是否对ListView进行排序。
belEdit:设置是否允许编辑ListView中的标签。
rgeImageList:设置大图标的图像列表。
6.SmallImageList:设置小图标的图像列表。
7.SelectionMode:设置选择模式,可以选择单选或多选。
三、添加项目在设置完属性后,您需要向ListView中添加项目。
可以通过以下几种方式添加项目:1.手动添加:使用代码逐个添加项目。
例如:ListView1.Items.Add("Item1")。
2.绑定数据源:将数据源绑定到ListView,数据源可以是数组、集合或数据表等。
例如:ListView1.DataSource = dataTable。
3.拖放文件:将文件拖放到ListView中,可以自动创建项目并显示文件名。
四、案例:显示目录中的文件列表下面是一个简单的案例,演示如何使用ListView控件显示目录中的文件列表:1.创建一个Windows窗体应用程序。
2.在窗体上添加一个ListView控件。
3.设置ListView的属性,例如View设置为LargeIcon,SelectionMode设置为Single。
VB6之ListView控件实现单选、多选、更新选定列内容(图例,源码,注释)

VB6之ListView控件实现单选、多选、更新选定列内容数据库编程中经常用到ListView控件实现选择后更新选定列内容的操作,通过该文档,读者可以更好的理解ListView控件的常用属性及方法。
从而使数据库操作更加友好,直观。
很多读者在使用该控件的时候都会遇到第一列填充不了内容的情况。
该情况是因为ListView控件的第一列(图中红色方框所示)和后面的列(图中蓝色方框所示)表示方法不一样。
红色方框部分用ListView1.ListItems.Add方法表示并添加。
蓝色方框部分用itmX.SubItems(i)方法表示并添加。
起始索引为1 。
本文将详细讲述ListView1实现上图所示功能。
本文的数据库链接已经定义在标准模块中。
具体代码如下:Public Function cnn() As ADODB.ConnectionSet cnn = New ADODB.Connectioncnn.Open "Provider=SQLOLEDB.1;Password=ldg730108;Persist SecurityInfo=True;User ID=ldg;Initial Catalog=ldg;Data Source=172.30.76.249"End Function一、将数据库内容添加到ListView1控件中请注意设置ListView1的view、Checkboxs属性。
Form_Load具体代码如下:Private Sub Form_Load()'设置ListView1的样式为报表样式ListView1.View = lvwReport'设置ListView1可以复选ListView1.Checkboxes = True'声明一个记录集Dim rs As ADODB.Recordset'设置一个新的记录集Set rs = New ADODB.Recordset'打开表winkrs.Open "select * from wink", cnn, adOpenKeyset, adLockOptimistic'设置ListView1的列标题Dim clmX As ColumnHeaderSet clmX = ListView1.ColumnHeaders.Add(, , "Id", ListView1.Width / 6)Set clmX = ListView1.ColumnHeaders.Add(, , "Name", ListView1.Width / 6)Set clmX = ListView1.ColumnHeaders.Add(, , "Sex", ListView1.Width / 6)Set clmX = ListView1.ColumnHeaders.Add(, , "Age", ListView1.Width / 6)Set clmX = ListView1.ColumnHeaders.Add(, , "Address", ListView1.Width / 6) Set clmX = ListView1.ColumnHeaders.Add(, , "Birth", ListView1.Width / 6)'将数据库内容添加到ListView1中Dim itmX As ListItemWhile Not rs.EOFSet itmX = ListView1.ListItems.Add(, , rs.Fields("id"))If Not IsNull(rs!Name) ThenitmX.SubItems(1) = rs.Fields("name")End IfIf Not IsNull(rs!sex) ThenitmX.SubItems(2) = rs.Fields("sex")End IfIf Not IsNull(rs!age) ThenitmX.SubItems(3) = rs.Fields("age")End IfIf Not IsNull(rs!address) ThenitmX.SubItems(4) = rs.Fields("address")End IfIf Not IsNull(rs!birth) ThenitmX.SubItems(5) = rs.Fields("birth")End If'移动到下一条记录。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
'定义一个连接对象和一个查询返回结果集
Set cn = New ADODB.Connection
Set rs = New ADODB.Recordset
'创建两个对象
cn.ConnectionString = "driver=SQL Server;server=IAN-PC;uid=sa;pwd=kingdee;database=CRM" cn.Open
Dim sql As String
sql = "select * from ian_1"
rs.Open sql, cn
ListView1.View = lvwReport
ListView1.ColumnHeaders.Add , , "选择", 1000
ListView1.ColumnHeaders.Add , , rs(0).Name, 1000
ListView1.ColumnHeaders.Add , , rs(1).Name, 1000
ListView1.ColumnHeaders.Add , , rs(2).Name, 1000
ListView1.ColumnHeaders.Add , , rs(3).Name, 1000
ListView1.ColumnHeaders.Add , , rs(4).Name, 1000
'表头名称
ListView1.GridLines = True '显示网格
ListView1.Checkboxes = True '显示复选框
'ListView1.FullRowSelect = True 整行记录全选上
Dim a As Integer
a = rs.RecordCount + 1
'MsgBox a
Dim x As Integer
x = 1
'取得rs的记录集
While Not rs.EOF And Not rs.BOF '如果记录集没有读完继续读
ListView1.ListItems.Add , , x '第一行选择复选框
ListView1.ListItems(x).SubItems(1) = rs(0).Value
ListView1.ListItems(x).SubItems(2) = rs(1).Value
ListView1.ListItems(x).SubItems(3) = rs(2).Value
ListView1.ListItems(x).SubItems(4) = rs(3).Value
ListView1.ListItems(x).SubItems(5) = rs(4).Value
x = x + 1
rs.MoveNext '下一行Wend
MsgBox "dd"。