ListView高亮显示的问题?(相当于帮组文件中的Index功能)

sugar 2001-05-21 06:44:00
有一Text框和ListView控件,要实现的是文本框中输入的字符与ListItem中的字符
匹配时,该ListItem要求高亮显示,而焦点仍在文本框?
...全文
290 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
sugar 2001-05-21
  • 打赏
  • 举报
回复
如何给分啊?
sugar 2001-05-21
  • 打赏
  • 举报
回复
thanks all
linlexin 2001-05-21
  • 打赏
  • 举报
回复
哦,对不起,刚才没有看题目,现在才是答案,和刚才的方法同出一则
Private Sub Form_Load()

Dim i As Integer
For i = 0 To 20
ListView1.ListItems.Add , "P" + CStr(i), "txt" + CStr(i)
Next
End Sub



Private Sub Text1_KeyDown(KeyCode As Integer, Shift As Integer)
Dim i As Integer
If KeyCode = 13 Then
For i = 1 To ListView1.ListItems.Count
If ListView1.ListItems(i).Text = Text1.Text Then
Set ListView1.DropHighlight = ListView1.ListItems(i)
ListView1.Refresh
Exit For
End If
Next

End If
End Sub
linlexin 2001-05-21
  • 打赏
  • 举报
回复
使用DropHighlight和HitTest属性如果是的话,给加分吧,谢谢下面是源程序
自己创建一个窗体和listview吧
Private Sub Form_Load()

Dim i As Integer
For i = 0 To 20
ListView1.ListItems.Add , "P" + CStr(i), "txt" + CStr(i)
Next
End Sub


Private Sub ListView1_MouseMove(Button As Integer, Shift As Integer, x As Single, y As Single)
ListView1.SelectedItem.Selected = False
Set ListView1.DropHighlight = ListView1.HitTest(x, y)
End Sub
lj770724 2001-05-21
  • 打赏
  • 举报
回复
if .... end if 中最好加上:
Set ListView.SelectedItem=View1.ListItems.Item(i)
BrentIvan 2001-05-21
  • 打赏
  • 举报
回复
用Selected属性

Private Sub Form_Load()
ListView1.FullRowSelect = True
ListView1.ListItems.Add , , "123"
ListView1.ListItems.Add , , "456"
ListView1.ListItems.Add , , "789"
End Sub

Private Sub Text1_Change()
Dim i As Integer

For i = 1 To ListView1.ListItems.Count
If ListView1.ListItems.Item(i).Text = Text1.Text Then
ListView1.ListItems.Item(i).Selected = True
Exit For
End If
Next
End Sub

sugar 2001-05-21
  • 打赏
  • 举报
回复
我做时,要把焦点给ListView时才可以???

7,763

社区成员

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

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