mercredi 5 août 2015

С++ How get object value (COM)

 #import "... My.tlb"  
    int _tmain()
    {
        HRESULT hr = CoInitialize(NULL);
        _ApplicationPtr myApp("MYAPP_.Application");
        //...some code
        //...some code

        FramePtr myFrame = myPage->Frames->Item[1L];
        VARIANT myFrameBounds = myFrame->GeometricBounds;

    }

    **inline function illustrated below, contained in .tlb FILE:**

    #pragma implementation_key(128)
    inline void MyApplication::Frame::PutGeometricBounds ( const _variant_t & _arg1 ) {
        _com_dispatch_method(this, 0x67626e64, DISPATCH_PROPERTYPUT, VT_EMPTY, NULL, 
            L"\x000c", &_arg1);
    }

    #pragma implementation_key(129)
    inline _variant_t MyApplication::Frame::GetGeometricBounds ( ) {
        VARIANT _result;
        VariantInit(&_result);
        _com_dispatch_method(this, 0x67626e64, DISPATCH_PROPERTYGET, VT_VARIANT, (void*)&_result, NULL);
        return _variant_t(_result, false);

The description in ObjectBrowser: Property GeometricBounds As Variant The bounds of the TextFrame excluding the stroke width, in the format [y1, x1, y2, x2], which give the coordinates of the top-left and bottom-right corners of the bounding box. as Array of 4 Units (Doubles or Strings)

How get/set value myFrameBounds?

Aucun commentaire:

Enregistrer un commentaire