Вот у меня презентация в powerpoint 2010. На одном слайде находится встроенный проигрыватель Windows Media OCX Control. В качестве простого графического интерфейса я поместил 3 кнопки с надписью Play, Pause, Stop на одном слайде.
Используя модуль Perl Win32 :: OLE , я хочу проверить, воспроизводится ли событие нажатия кнопки «Воспроизведение» во встроенном проигрывателе Windows Media.
Вызывает событие Click мышью.
Используя приведенный ниже код, он не работает. Почему?
note "Slide $i: " . $slide->{Name};
# switch to "full-screen presentation mode"
PowerpointHelpers::launch_slideshow_from_slide($ole->ActivePresentation, $i);
sleep 3;
#does not work
$btnplay->{OLEFormat}->Object()->btnPlay_Click();
sleep 3;
# return to slide edit-mode
# PowerpointHelpers::exit_show($ole);
Это процедура VBA, которая должна выполняться:
Public Sub btnPlay_Click()
Init
PlayVideo (Player.URL)
End Sub
Как вы можете видеть, это просто вызывает две пользовательские функции, которые воспроизводят файл avi. Это работает правильно в интерактивном использовании. но не с помощью автоматизации VBA.
Между тем, я попробовал довольно много вариантов линии
$btnplay->{OLEFormat}->Object()->btnPlay_Click();
но никто не работает.
Вот дамп объекта $ btnplay:
OLE object's properties:
Accelerator .............................
AutoSize ................................ 0
BackColor ............................... 8421504
BackStyle ............................... 1
Caption ................................. Video abspielen
Enabled ................................. 1
Font .................................... [IFont]
ForeColor ............................... 0
Height .................................. 28.375
Left .................................... 18.75
Locked .................................. 0
MouseIcon ............................... <undef>
MousePointer ............................ 0
Name .................................... btnPlay
Picture ................................. <undef>
PicturePosition ......................... 7
TakeFocusOnClick ........................ 1
Top ..................................... 382.875
Visible ................................. 1
Width ................................... 124.75
WordWrap ................................ 0
ZOrderPosition .......................... 9