抽屉视图,如何将焦点设置到指定视图的某个节点上? 抽屉式界面,每个视图包含一个树形控件,现在想在按Ctrl+F,输入一个参数(第几个视图,树的哪一个节点),然后根据这个参数将焦点移到对应的树形节点上? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 嗯。问题在哪里?有几个视图你是知道的吧。那么要显示哪个视图是没有问题了。至于树的哪一个节点,不知道你这个函数用什么作为参数,反正就是搜索呗。找到对应的节点就select 恩,“找到对应的节点就select“可以详细点吗?比如我在主界面添加一个Ctrl+F消息OnFind(),然后在函数里面怎么处理,比如抽屉界面一CTreelCtrl tree_one, 抽屉界面2 CTreectrl tree_two, 关键是在OnFind()里面怎么处理? 搜索树需要用到递归。树是一个典型的适合递归算法的玩意。递归:从树的GetRootItem/或从一个根节点开始,先GetChildItem获得第一个节点(也可能是根,是跟则调用递归),判断节点的文本(不知道你的节点信息是不是树节点的标题)是否为输入的节点参数。如果是,则OK,如果不是,则GetNextSiblingItem获得下一个节点(或者根,是跟则递归),继续节点循环。判断是否为根节点,用ItemHasChildren 还有的问题是“我现在抽屉视图1只能看见tree_one,而我界面输入尝试用tree_two.GetRootItem()报错!”继续关注! 我现在抽屉视图1只能看见tree_one,而我界面输入尝试用tree_two.GetRootItem()报错!”===你先得转换当前视图阿。 还没有解决,继续顶如 抽屉1 CWndOne(父类为CObjWnd) -> CTreeOne 抽屉2 CWndTwo(父类为CObjWnd) -> CTreeTwo 现在我在CMainFrame中怎样灵活的操作CTreeTwo和CTreeOne?我测试: CTreeOne m_t1; m_t1.GetRootItem();//错误!! 我测试: CTreeOne m_t1; m_t1.GetRootItem();//错误!!===晕死了,有这么写的么?你怎么在这里定义一个CTreeOne对象呢??????不错才怪阿。你要先得到抽屉1中的CTreeOne对象才可以。怎么能定义这么一个新实例呢。 请问怎么做色带的Combox? 同一MFC应用程序在XP与2K下的运行问题 我做这样一个C/S程序,有点象远程监控的功能,请问怎么样来实现? 100分求MFC控件中几个简单问题,马上结贴!!! 我真心的告白,只为了记念自已内心的伤痛 非常菜的问题!关于任务管理器的 急,关于红接口程序 image uploader停用了吗 怎样控制CPropertyPage对话框的边距? VB高手请出手相助!!100分啊!! 关于CInternetFile::Seek的问题 急求由RGB数据创建AVI视频文件?
递归:
从树的GetRootItem/或从一个根节点开始,先GetChildItem获得第一个节点(也可能是根,是跟则调用递归),判断节点的文本(不知道你的节点信息是不是树节点的标题)是否为输入的节点参数。如果是,则OK,如果不是,则GetNextSiblingItem获得下一个节点(或者根,是跟则递归),继续节点循环。
判断是否为根节点,用ItemHasChildren
===你先得转换当前视图阿。
如 抽屉1 CWndOne(父类为CObjWnd) -> CTreeOne
抽屉2 CWndTwo(父类为CObjWnd) -> CTreeTwo
现在我在CMainFrame中怎样灵活的操作CTreeTwo和CTreeOne?
我测试:
CTreeOne m_t1;
m_t1.GetRootItem();//错误!!
CTreeOne m_t1;
m_t1.GetRootItem();//错误!!
===晕死了,有这么写的么?你怎么在这里定义一个CTreeOne对象呢??????不错才怪阿。
你要先得到抽屉1中的CTreeOne对象才可以。怎么能定义这么一个新实例呢。