微软对于office中的 CustomTaskPane,已经把VB6抛弃了,没有可视化的操作 ,甚至连示例说明都没有一个..,就仅仅在帮助文档里有那么几句话,如下:Office 开发人员参考 
ICustomTaskPaneConsumer.CTPFactoryAvailable 方法 
将 CTPFactory 对象传递给随后可在创建自定义任务窗格时使用的 Microsoft ActiveX 加载项。
可以用任何支持 COM 并允许创建动态链接库 (DLL) 文件的语言创建自定义任务窗格。例如,Microsoft Visual Basic® 6.0、Microsoft Visual Basic .NET、Microsoft Visual C++®、Microsoft Visual C++ .NET 和 Microsoft Visual C#®。但是,Microsoft Visual Basic for Applications (VBA) 不支持创建自定义任务窗格。 
按照C#示例的代码进行翻译,还是不行,望MVP出手,来解决这个问题..public class Connect : Object, Extensibility.IDTExtensibility2, ICustomTaskPaneConsumer
... 
object missing = Type.Missing;
public CustomTaskPane CTP = null;public void CTPFactoryAvailable(ICTPFactory CTPFactoryInst)
{
CTP = CTPFactoryInst.CreateCTP("SampleActiveX.myControl", "Task Pane Example", missing);
sampleAX = (myControl)CTP.ContentControl;
sampleAX.InsertTextClicked += new InsertTextEventHandler(sampleAX_InsertTextClicked);
CTP.Visible = true;
} VB6代码如下,这里我并没有创建自己的AX控件,只是想建一个任务窗..
创建后没任何反应,也没报错,强烈要求MVP出来弥补这个空白..
Option Explicit
Implements ICustomTaskPaneConsumer
Implements IDTExtensibility2Dim oWD As Word.Application
Dim ctp As CustomTaskPane   
Private Sub ICustomTaskPaneConsumer_CTPFactoryAvailable(ByVal CTPFactoryInst As Office.ICTPFactory)
Set ctp = CTPFactoryInst.CreateCTP("SampleActiveX.myControl", "mytest")
ctp.Visible = TrueEnd SubPrivate Sub IDTExtensibility2_OnAddInsUpdate(custom() As Variant)End SubPrivate Sub IDTExtensibility2_OnBeginShutdown(custom() As Variant)End SubPrivate Sub IDTExtensibility2_OnConnection(ByVal Application As Object, ByVal ConnectMode As AddInDesignerObjects.ext_ConnectMode, ByVal AddInInst As Object, custom() As Variant)
Set oWD = ApplicationEnd Sub

解决方案 »

  1.   

    哎,还是没办法啊,, 难道VB6真的OVER了吗?
      

  2.   

    请问你的SampleActiveX.myControl控件创建了吗?SampleActiveX.myControl应该是指向你自己的ActiveX控件代码的个人看法,如果是COM的,没理由VB6的ActiveX就不行了。C#也要设置成COM可见才行。
      

  3.   

    这个问题已经得到解决.VB6确实需要自己事先写一个控件,没有可视化编辑,既然微软都放弃在VB6进行CustomTaskPane可视化编辑,我们何必去强扭这个花儿呢,浪费自己时间...
      

  4.   

    没有可视化编辑? 不明白你的意思。VB ActiveX控件在类模块内你可以声明任意窗体,其他自定的控件,可以做Form做的任何事情,什么才叫可视化操作呢?
      

  5.   

    CustomTaskPane是一个任务栏窗体,他本身就是一个容器,里面可以装AX控件,而VB6不能像操作窗体控件那样操作它,所以就不叫可视化操作.
    CustomTaskPane