تحديث كائنات OLE تلقائيًا باستخدام إضافة MS PowerPoint
حول تحديث كائنات OLE تلقائيًا
أحد أبرز الأسئلة التي يطرحها عملاء Aspose.Slides هو كيفية إنشاء أو تغيير المخططات القابلة للتحرير أو أي كائنات OLE أخرى وتحديثها تلقائيًا عند فتح العرض التقديمي. للأسف، لا يدعم PowerPoint أي ماكرو تلقائي، المتوفر في Excel و Word. الوحيدان المتوفران هما ماكرو Auto_Open و Auto_Close. ومع ذلك، فإنهما يعملان تلقائيًا فقط من مكون إضافي. تُظهر هذه النصيحة التقنية القصيرة كيفية تحقيق ذلك.
أولاً، هناك العديد من المكونات الإضافية المجانية المتاحة التي تضيف ميزة ماكرو Auto_Open إلى PowerPoint على سبيل المثال AutoEvents Add-in و Event Generator.
بعد تثبيت مثل هذا المكون الإضافي، أضف فقط ماكرو Auto_Open() (OnPresentationOpen() في حالة “Event Generator”) إلى عرضك التقديمي النموذجي كما هو موضح أدناه:
Shape oShape; | |
Slide oSlide; | |
// Loop through each slide in the presentation. | |
for (var oSlide : ActivePresentation.Slides) { | |
// Loop through all the shapes on the current slide. | |
for (var oShape : oSlide.Shapes) { | |
// Check whether the shape is an OLE object. | |
if ((oShape.Type == msoEmbeddedOLEObject)) { | |
// Found an OLE object; obtain object reference, and then update. | |
oObject = oShape.OLEFormat.Object; | |
oObject.Application.Update(); | |
// Now, quit out of the OLE server program. This frees | |
// memory, and prevents any problems. Also, set oObject equal | |
// to Nothing to release the object. | |
oObject.Application.Quit(); | |
oObject = null; | |
} | |
} | |
} |