当前位置:编程学习 > VB >>

listview的doubleclick事件

listview的views为detail

想要实现
如果双击 某一个Item,则弹出关于这个Item的修改对话框。
 如果双击的是空白处,则弹出新建ITEM的对话框

但是双击空白处不能触发doubleclick事件啊

怎么实现双击空白处能触发事件 --------------------编程问答--------------------
Private Sub ListView1_Click()'在Click事件里判断
  Debug.Print ListView1.SelectedItem.Index
End Sub
--------------------编程问答--------------------
Option Explicit
Dim xPos As Long, yPos As Long

Private Sub Form_Load()
    Dim i As Long
    For i = 0 To 10
        With ListView1
            .ListItems.Add , , "Item" & CStr(i)
        End With
    Next
End Sub

Private Sub ListView1_DblClick()
    Dim x As ListItem
    Set x = ListView1.HitTest(xPos, yPos)
    
    If x Is Nothing Then
        MsgBox "There is no Item"
    Else
        MsgBox "There is " & x.Text
    End If
End Sub


Private Sub ListView1_MouseDown(Button As Integer, Shift As Integer, x As Single, y As Single)
    xPos = x
    yPos = y
End Sub
--------------------编程问答-------------------- 提示hittest不是listview的成员啊

引用 2 楼  的回复:
VB code
Option Explicit
Dim xPos As Long, yPos As Long

Private Sub Form_Load()
    Dim i As Long
    For i = 0 To 10
        With ListView1
            .ListItems.Add , , "Item" & CStr(i)
     ……
--------------------编程问答-------------------- 我用的是2003版本  listview没用hittest方法  ,有没有替代的方法啊

引用 3 楼  的回复:
提示hittest不是listview的成员啊

引用 2 楼  的回复:

VB code
Option Explicit
Dim xPos As Long, yPos As Long

Private Sub Form_Load()
Dim i As Long
For i = 0 To 10
With ListView1
.ListItems.Add , , "Ite……
--------------------编程问答-------------------- 你的是VB.net? --------------------编程问答-------------------- 你的listview不是Vb自带的控件? --------------------编程问答-------------------- 是vb.net 啊    VS 2003

引用 6 楼  的回复:
你的listview不是Vb自带的控件?
--------------------编程问答-------------------- 呵呵,那就引用VB的控件吧 --------------------编程问答-------------------- VB6.0和VS2008以上的版本都有hittest方法
VS2003没有啊 
有没有什么替代的办法啊 
--------------------编程问答-------------------- 你干嘛非要用2003,使用2008不行?
补充:VB ,  控件
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,