找回密码
 加入
搜索
查看: 3914|回复: 9

[AU3基础] 如何双击某listbox中项目时触发事件

  [复制链接]
发表于 2010-2-27 00:38:40 | 显示全部楼层 |阅读模式
请问如何在已创建的list列表框中鼠标双击某项目触发事件呢?
麻烦高手回答,多谢!
发表于 2010-2-27 00:49:40 | 显示全部楼层
看_GUICtrlListBox_Create函数帮助。
 楼主| 发表于 2010-2-27 00:53:16 | 显示全部楼层
这里的函数都是英文的呢,看不懂.
而且create不是创建的吗?
麻烦楼上朋友指点。
发表于 2010-2-27 11:23:04 | 显示全部楼层
嘿嘿,没人回答呢
发表于 2010-2-27 12:24:07 | 显示全部楼层
回复 3# sky808
#include <GUIListBox.au3>
#include <WindowsConstants.au3>

$hGUI = GUICreate("ListBox test", 400, 296)
$hListBox = _GUICtrlListBox_Create($hGUI, "", 2, 2, 396, 296, $LBS_EXTENDEDSEL)
GUISetState()
GUIRegisterMsg($WM_COMMAND, "WM_COMMAND")

_GUICtrlListBox_Dir($hListBox, @WindowsDir & "\win*.exe")
_GUICtrlListBox_AddFile($hListBox, @WindowsDir & "\Notepad.exe")

Do
Until GUIGetMsg() = -3

Func WM_COMMAND($hWnd, $iMsg, $iwParam, $ilParam)
        #forceref $hWnd, $iMsg
        Local $hWndFrom, $iIDFrom, $iCode, $hWndListBox
        If Not IsHWnd($hListBox) Then $hWndListBox = GUICtrlGetHandle($hListBox)
        $hWndFrom = $ilParam
        $iIDFrom = BitAND($iwParam, 0xFFFF) ; Low Word
        $iCode = BitShift($iwParam, 16) ; Hi Word
        Switch $hWndFrom
                Case $hListBox, $hWndListBox
                        Switch $iCode
                                Case $LBN_DBLCLK
                                        $txt = _GUICtrlListBox_GetSelItemsText($hListBox)
                                        If $txt[0] > 0 Then MsgBox(0, '高亮项目', $txt[1])
                        EndSwitch
        EndSwitch
        Return $GUI_RUNDEFMSG
EndFunc   ;==>WM_COMMAND
 楼主| 发表于 2010-2-27 13:25:58 | 显示全部楼层
感谢感谢!!!!
发表于 2010-2-28 02:57:53 | 显示全部楼层
好东本,学习了。。
发表于 2010-4-12 13:36:42 | 显示全部楼层
都是使用$WM_COMMAND的方式
发表于 2010-4-12 17:44:34 | 显示全部楼层
奇怪。。。。
发表于 2010-4-19 09:08:36 | 显示全部楼层
谢谢,也解决了我的问题
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-6-19 01:19 , Processed in 0.074340 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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