none
如何获取word中复选框的name属性值 RRS feed

  • 问题

  • Word::InlineShapesPtr shapes=p_doc->GetInlineShapes();
    long shapesCount =shapes->GetCount();
    	
    for(int i=1; i<=shapesCount; i++)
    {
    	Word::InlineShapePtr shape =shapes->Item(i);
    	Word::OLEFormatPtr spOleFormat = shape->OLEFormat;
    	if(NULL==spOleFormat) return ;
    
    	CString type =spOleFormat->GetClassType();
    	if(type!="Forms.CheckBox.1")
    		continue;
    
    	IDispatchPtr  pDisp  =spOleFormat->GetObject();
    	CComDispatchDriver  ComDisp(pDisp);
    
    	CComVariant vName;
    	ComDisp.GetPropertyByName(L"Name", &vName);
    }

    上面是我原先一段获取word中复选框的name属性的代码,但是fm20.dll里面的IMdcCheckBox没有name属性,同时程序生成的msword.tlh里的_OLEControl接口有name,Left等属性,

    我想问name属性如何保存和获取的呢?除了上面的代码,能够用其他代码获取name属性值吗?

    多谢看帖

    2012年10月15日 9:34