Python pptx Click action примеры - PullRequest
       16

Python pptx Click action примеры

0 голосов
/ 22 ноября 2018

Я пытаюсь воссоздать простое действие PP_Action.Приведенный ниже код построен без ошибок, однако действие нажатия не будет выполняться на слайдах.

'shape.click_action.action' возвращается с NONE (0) после назначения действия.Что-то не так с кодом?Не удалось найти базовый пример по этому вопросу.Пожалуйста, помогите.

from pptx import Presentation
from pptx.enum.shapes import MSO_SHAPE
from pptx.util import Cm
from pptx.enum.action import PP_ACTION

prs = Presentation('C:/Template.pptx')
slide = prs.slides.add_slide(prs.slide_layouts[0])

shape = slide.shapes.add_shape(MSO_SHAPE.RECTANGLE, Cm(-0.05),Cm(0.86),Cm(34),Cm(19))
shape.click_action.action == PP_ACTION.LAST_SLIDE
print(shape.click_action.action)

slide = prs.slides.add_slide(prs.slide_layouts[0])
slide = prs.slides.add_slide(prs.slide_layouts[0])
prs.save('C:/example.pptx')

1 Ответ

0 голосов
/ 11 января 2019

click_action.action только для чтения, поэтому присвоение ему приведет к ошибке.В вашем случае вы использовали оператор сравнения ==, который ничего не делает заметным.

Это не фактическое поведение LAST_SLIDE, потому что оно динамическое, как вы можете добавлять и удалять слайды, и оно все еще работает, но этона шаг ближе к тому, что вы ищете:

shape.click_action.target_slide = prs.slides[-1]
...