最近有人问起在VBE插件中创建toolwindow的事情,因为VBE窗口控件的容器是ActiveX UserDocument,而.net不支持这个东西,所以在vb6下开发会简单些。.net也有替代办法,使用UserControl注册一个com控件就可代替UserDocument了 先介绍一下toolwindow:toolwindows是可停靠的,无模式的窗口,大家在VBE界面中看到的各种窗口都属于Toolwindows,使用鼠标拖拽就可以改变窗口的停靠方式,并且VBE会在注册表中记住它,这给我们编写友好的用户界面提供了方便。当然,toolwindow也是有缺点的,自定义的toolwindow需要处理很多事情,例如按键消息、Resize等问题,而且界面需要使用自定义控件等等,这给业余开发带来了难度。 目前toolwindow开发资料很少,在网上只能找到vb6和vb.net的资料,C#没有Sample。经过一天的研究,我写了一个应用例子,集成到了我的VBA排版免费插件Smart Indenter for VBE v1.8版上,供大家使用测试。
************* VBE的toolwindow开发的vb6及vb.net开发资料链接 ************** http://www.cnblogs.com/Duiker/archive/2005/10/19/257625.html http://www.activevb.de/tutorials/tut_addin/addin6.html https://www.codeproject.com/Articles/310710/VBE-CreateToolWindow https://www.mztools.com/articles/2012/mz2012017.aspx
欢迎技术交流。
|