|
|
本帖最后由 yhxhappy 于 2010-11-30 14:54 编辑
小弟的TREEVIEW 是带 CHECKBOX 的那种,现在想实现的是 选择子项则父项也跟着勾选,父项取消勾选则子项全部取消选择。在消息循环模式已经解决了,但现在换到事件模式就不懂了。
关键的是不知道什么取得最后点击的项目的ID。因为全部的项目信息我是存储在一个数组里面,只要知道最后选择的项目ID我就好办了
使用 @GUI_CtrlId 似乎对TREE控件没效果,没有返回值的,还请大家帮帮忙- #include <GUIConstantsEx.au3>
- #include <WindowsConstants.au3>
- #include <TreeViewConstants.au3>
- Opt("GUIOnEventMode", 1) ; 切换到 OnEvent 模式
- GUICreate(" GUI treeview 控件", 350, 215)
- GUISetOnEvent($GUI_EVENT_CLOSE, "GUI")
- $treeview = GUICtrlCreateTreeView(6, 6, 300, 200, $TVS_CHECKBOXES+$TVS_HASLINES+$TVS_LINESATROOT+$TVS_HASBUTTONS, $WS_EX_CLIENTEDGE)
- GUICtrlSetOnEvent(-1, "GUI")
- $item1 = GUICtrlCreateTreeViewItem("常规", $treeview)
- GUICtrlCreateTreeViewItem("关于...", $item1)
- GUICtrlCreateTreeViewItem("计算机", $item1)
- GUICtrlCreateTreeViewItem("用户名", $item1)
- GUICtrlCreateTreeViewItem("分辨率", $item1)
- GUICtrlCreateTreeViewItem("其它", $item1)
- GUISetState()
- While 1
- ;;
- WEnd
- Func GUI()
- Switch @GUI_CtrlId
- Case $GUI_EVENT_CLOSE
- Exit
- Case $treeview
- ;MsgBox(0,"",@GUI_CtrlId)
- EndSwitch
- EndFunc
复制代码 |
评分
-
查看全部评分
|