找回密码
 加入
搜索
查看: 40515|回复: 52

[原创] ListView判断双击

 火... [复制链接]
发表于 2009-3-31 08:33:25 | 显示全部楼层 |阅读模式
可能很多朋友都有相似的方法来判断左击、双击、右击事件,但仍然有很多朋友问起这个问题,所以稍微注释了一下、老调重弹的发一下判断双击相关代码,含判断是否选中了ListViewItem(行)的方法。

#include <GUIConstantsEx.au3>
#include <ListViewConstants.au3>
#include <WindowsConstants.au3>
#include <GUIListView.au3>

$Form1 = GUICreate("Form1", 410, 310)
GUIRegisterMsg($WM_NOTIFY, "WM_NOTIFY")

$ListView1 = GUICtrlCreateListView("||", 8, 8, 400, 300)
GUISetState(@SW_SHOW)
For $I = 1 To 10
        GUICtrlCreateListViewItem($I, $ListView1)
Next

Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE

Func WM_NOTIFY($hWndGUI, $MsgID, $WParam, $LParam)

        Local $tagNMHDR, $Event, $hWndFrom, $IDFrom
        Local $tagNMHDR = DllStructCreate("int;int;int", $LParam)
        If @error Then Return $GUI_RUNDEFMSG
        $IDFrom = DllStructGetData($tagNMHDR, 2)
        $Event = DllStructGetData($tagNMHDR, 3)
        $tagNMHDR = 0
        Switch $IDFrom;选择产生事件的控件
                
                Case $ListView1

                        Switch $Event; 选择产生的事件
                                
                                Case $NM_CLICK ; 左击
;~                                         ...
                                        
                                Case $NM_DBLCLK ; 双击
                                        $Index = _GUICtrlListView_GetSelectedIndices($ListView1)
                                        If Not StringLen($Index) Then; 这里用以判断是否选定了ListViewItem
                                                MsgBox(0, "", "未选定")
                                                Return
                                        EndIf
                                        MsgBox(0,0, _GUICtrlListView_GetItemText($ListView1, Number($Index), 0))
                                        
                                Case $NM_RCLICK ; 右击
;~                                         ...
                        EndSwitch
                        
        EndSwitch
        
        Return $GUI_RUNDEFMSG
EndFunc   ;==>WM_NOTIFY


[ 本帖最后由 漠北雪~狼 于 2009-3-31 08:34 编辑 ]
发表于 2009-3-31 09:00:07 | 显示全部楼层
顶一下再说
发表于 2009-4-1 19:31:46 | 显示全部楼层
谢谢提供源码,下来学习下。
发表于 2009-4-1 21:33:02 | 显示全部楼层
谢谢.
发表于 2009-4-2 03:57:03 | 显示全部楼层
谢谢啦            .
发表于 2009-5-16 16:27:49 | 显示全部楼层
做个记号  用的着的时候好找
发表于 2009-5-16 19:35:42 | 显示全部楼层
这个相当不错,已经用上了,呵呵。
发表于 2009-5-16 20:37:22 | 显示全部楼层
收藏了,多谢
发表于 2009-5-16 20:37:39 | 显示全部楼层
收藏了,多谢
发表于 2009-5-18 10:19:57 | 显示全部楼层
非常感谢
顶一下
发表于 2009-5-19 20:24:05 | 显示全部楼层
学习中 感谢
发表于 2009-8-22 11:16:44 | 显示全部楼层
谢谢斑竹!!!
发表于 2009-8-25 13:06:52 | 显示全部楼层
谢谢楼主,
发表于 2009-8-25 13:20:17 | 显示全部楼层
先做个标记
发表于 2009-8-27 14:16:31 | 显示全部楼层
本帖最后由 jycel 于 2009-8-27 16:22 编辑

如果要读取选中这一列后面其它项目中的数据该怎么读取呢?
~已经解决问题了!
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-22 22:39 , Processed in 0.083467 second(s), 19 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表