关于MFC中的tree控件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于MFC中的tree控件相关的知识,希望对你有一定的参考价值。
有没有什么函数可以得到光标当前所指节点的指针或者句柄???
HitTest 函数。HTREEITEM HitTest(CPoint pt,UINT* pFlags = NULL) const;返回为当前pt点对应的tree的节点,pFlags为节点属性值 参考技术A 用CTreeCtrl::HitTest(。。。)函数,可以在mousemove的消息里虚拟点击树,就可以得到你要的treeitem 句柄了 参考技术B CTreeCtrl::GetSelectedItem();Return Value
The handle of the selected item; otherwise NULL.
EX:
HTREEITEM hItem = pmyTreeCtrl->GetSelectedItem();
这样就可以了
MFC 应用程序中的 C# 控件
【中文标题】MFC 应用程序中的 C# 控件【英文标题】:C# controls in a MFC Application 【发布时间】:2008-10-10 10:59:44 【问题描述】:我负责使用 MFC 和一些第三方控件完全用 Visual C++ 编写的应用程序的用户界面。我想使用 C#(WinForms 甚至更好的 WPF)来改善应用程序的外观和感觉。
我想要一些关于如何做的建议。链接、文章、示例...
现在用户界面被隔离在一个项目中,我不想用 CLR 编译整个模块。那么我该如何从架构的角度来管理呢?
我已经在 Internet 上查找了该主题并阅读了 MSDN 信息。我想要更详细的信息...方便吗?优点缺点?您是否在“大型”应用程序中成功使用了这种方法? 我不想用 CLR 编译整个 ui 项目...我可以将所有 .NET 代码放在一个独立的项目中并从 ui 项目中调用它吗?最好的方法是什么?
提前致谢。
【问题讨论】:
您是否知道许多您可能期望的视觉样式在 .NET 中不可用?您不能期望您的程序看起来像 MS Office 2003 甚至 2007 应用程序一样开箱即用。您仍然需要 WinForms 的插件软件来实现这一点,因为它不是标准 .NET 包的一部分。 【参考方案1】:一个很好的起点是 MSDN 上的 Win32 and WPF interop 页面。
【讨论】:
【参考方案2】:我发现thiscodeproject 的文章很好地介绍了混合mfc/winforms代码的主题。
【讨论】:
【参考方案3】:当遇到同样的问题时,我用 C# 制作了一个 ActiveX 控件并在我的 MFC 应用程序中使用它。 MS 的人员支持使用 .NET 构建 ActiveX 控件,但仍然可以使用具有自定义 [ComRegisterFunction()]
和 [ComUnregisterFunction]
的普通 Jane COM 类来实现。
虽然 MS 想告诉我们 /clr 标志将解决我们的问题,但它明显减慢了我的大型 MFC 应用程序。
【讨论】:
以上是关于关于MFC中的tree控件的主要内容,如果未能解决你的问题,请参考以下文章