找回密码
 加入
搜索
查看: 3427|回复: 7

树形控件展开后设置焦点到子项,如何让焦点显示在可见范围?

  [复制链接]
发表于 2009-11-30 18:18:44 | 显示全部楼层 |阅读模式
本帖最后由 kingxy 于 2009-12-6 21:19 编辑

建立了一个树形控件,子项目若干。
在用ControlTreeView ($Form, "", ControlGetHandle($Form, "", $treeview), "Expand", "子项目1")命令挨个展开子项目后,使用GUICtrlSetState($item1, $GUI_FOCUS)命令将焦点设置在"子项目1"上,$item1为子项目1的控件ID,$treeview为树形控件的控件ID,$Form为主窗口控件ID。
  这时,由于子项目太多,导致需要使用树形控件右侧滑块上下滑动才能浏览到其他子项目。问题是设置焦点后,只能使用滑块才能看到所设置了焦点的“子项目1”,我想问的是,使用什么方法才能在设置焦点到“子项目1”上后,自动在树形控件可见范围内可以看到设置了焦点的“子项目1”?
   谢谢。

  解决方法:
  根据131738朋友的提示,使用_GUICtrlTreeView_EnsureVisible 函数可以解决该问题。
  在此附上!谢谢。
 楼主| 发表于 2009-12-6 12:56:06 | 显示全部楼层
哪位帮助一下?
发表于 2009-12-6 18:37:55 | 显示全部楼层
_GUICtrlTreeView_SetFocused
发表于 2009-12-6 18:41:38 | 显示全部楼层
_GUICtrlTreeView_EnsureVisible
 楼主| 发表于 2009-12-6 21:16:28 | 显示全部楼层
_GUICtrlTreeView_EnsureVisible
131738 发表于 2009-12-6 18:41



    非常感谢131738的帮助!
  使用你提供的函数,可以成功将目标 树形子项目显示在扩展后的树形控件可见范围内。

   也感谢netegg的热心肠,你提供的函数我也尝试过了。

  谢谢!
发表于 2010-3-5 03:28:30 | 显示全部楼层
学习学习。
发表于 2015-3-23 11:08:05 | 显示全部楼层
回复 5# kingxy

怎么做到的
发表于 2015-4-12 21:28:07 | 显示全部楼层
虽然我这简单的回复属于灌水,但也是对楼主莫大的支持
您需要登录后才可以回帖 登录 | 加入

本版积分规则

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

GMT+8, 2024-9-28 16:16 , Processed in 0.079032 second(s), 21 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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