listview中itemclick方法的使用~~

iceman_chen 2005-09-12 03:01:05
listView 显示 如下的格式
如下的 格式
a1 a2 a3 a4
b1 b2 b3 b4
c1 c2 c3 c4
请问用listview_itemclick如何获得a1 a2 a3 a4(或者b1 b2 b3 b4)!
请高手指点,在线等,谢谢
...全文
533 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
还想懒够 2005-09-13
  • 打赏
  • 举报
回复
看看这个代码吧,里面有你想要的答案,没时间给你提炼出来了.

http://blog.csdn.net/jjkk168/services/trackbacks/321715.aspx
zqfleaf 2005-09-12
  • 打赏
  • 举报
回复
自已要动手!!
Private Sub ListView1_ItemClick(ByVal Item As MSComctlLib.ListItem)
Dim rItem As ListSubItem
Dim i As Long
Dim j As Long
For j = 1 To Item.ListSubItems.Count
Set rItem = Item.ListSubItems.Item(j)
Debug.Print rItem.Text
Next
End Sub
iceman_chen 2005-09-12
  • 打赏
  • 举报
回复
有点晕了,不是我需要的,谢谢大家!!
3q2008Com 2005-09-12
  • 打赏
  • 举报
回复
'我敢接触这个控件时写的 希望对你有用
Private Sub Command1_Click()

Dim i, mRow As ListItem
lsvEMail.SmallIcons = ImageList1 '关联图标

' For i = 1 To 10
' lsvEMail.ListItems.Add i, , i & "aa"
' lsvEMail.ListItems(i).SubItems(1) = i & "bb"
' lsvEMail.ListItems(i).SubItems(2) = i & "cc"
' lsvEMail.ListItems(i).ListSubItems.Item(2).ReportIcon = 2 '将 第2列加入图标
' lsvEMail.ListItems(i).SubItems(3) = i & "ddd"
' lsvEMail.ListItems(i).SmallIcon = i
' Next
'

For i = 1 To 20
Set mRow = lsvEMail.ListItems.Add(, , i)
mRow.SubItems(1) = i & "bb"
mRow.SubItems(2) = i & "cc"

mRow.ListSubItems.Item(2).ReportIcon = 2
'将 第2列加入图标
mRow.SubItems(3) = i & "ddd"
Next

For j = 1 To lsvEMail.ListItems(2).ListSubItems.Count '第2列变粗体
lsvEMail.ListItems(2).ListSubItems.Item(j).Bold = True
Next

End Sub

Private Sub Form_Load()
lsvEMail.HideSelection = 0
lsvEMail.View = lvwReport
Dim i
For i = 0 To 5
lsvEMail.ColumnHeaders.Add , , "标题" & i, 1800
Next

End Sub


Private Sub lsvEMail_DblClick()
' lsvEMail.MultiSelect
'lsvEMail.SelectedItem.Index '对应行的索引
MsgBox lsvEMail.SelectedItem.ListSubItems(2).Text
End Sub

Private Sub lsvEMail_MouseUp(Button As Integer, Shift As Integer, x As Single, y As Single)
' lsvEMail.ListItems(lsvEMail.HitTest(x, y).Index).ForeColor = &HFF&
' Text1.Left = ListView1.ListItems(ListView1.HitTest(x, y).Index).Left + ListView1.Left
'Text1.Top = ListView1.ListItems(ListView1.HitTest(x, y).Index).Top + ListView1.Top
'Text1.Height = ListView1.ListItems(ListView1.HitTest(x, y).Index).Height
'Text1.Width = ListView1.ListItems(ListView1.HitTest(x, y).Index).Width
lsvEMail.ListItems.Remove (lsvEMail.HitTest(x, y).Index)
End Sub
xxfly 2005-09-12
  • 打赏
  • 举报
回复
debug.print ListView1.SelectedItem.text
for i=1 to ListView1.ListItems.Count
debug.print ListView1.SelectedItem.SubItems(i)
next
iceman_chen 2005-09-12
  • 打赏
  • 举报
回复
请问还有别的方法吗?我是想得到被点击记录的相关内容,listview的内容是数据库中取得的
zqfleaf 2005-09-12
  • 打赏
  • 举报
回复
Private Sub Command1_Click()

Dim tItem As ListItem
Dim rItem As ListSubItem
Dim i As Long
Dim j As Long

Set tItem = ListView1.ListItems.Add(, "a1", "a1")
Set rItem = tItem.ListSubItems.Add(, , "a2")
Set rItem = tItem.ListSubItems.Add(, , "a3")
Set rItem = tItem.ListSubItems.Add(, , "a4")

Set tItem = ListView1.ListItems.Add(, "b1", "b1")
Set rItem = tItem.ListSubItems.Add(, , "b2")
Set rItem = tItem.ListSubItems.Add(, , "b3")
Set rItem = tItem.ListSubItems.Add(, , "b4")

Set tItem = ListView1.ListItems.Add(, "c1", "c1")
Set rItem = tItem.ListSubItems.Add(, , "c2")
Set rItem = tItem.ListSubItems.Add(, , "c3")
Set rItem = tItem.ListSubItems.Add(, , "c4")

Set tItem = ListView1.ListItems.Add(, "d1", "d1")
Set rItem = tItem.ListSubItems.Add(, , "d2")
Set rItem = tItem.ListSubItems.Add(, , "d3")
Set rItem = tItem.ListSubItems.Add(, , "d4")



For i = 1 To ListView1.ListItems.Count
Set tItem = ListView1.ListItems.Item(i)
Debug.Print tItem.Text
For j = 1 To tItem.ListSubItems.Count
Set rItem = tItem.ListSubItems.Item(j)
Debug.Print rItem.Text
Next
Debug.Print "Next"
Next

End Sub

1,451

社区成员

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

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