Riproduzione automatica di un filmato in una presentazione di PowerPoint con C #
-
09-10-2019 - |
Domanda
Attualmente sto cercando di modificare alcune impostazioni in un file .pptx tramite C # e Microsoft.Office.Interop.PowerPoint
. Ho alcuni filmati .wmv collegate in diverse diapositive della presentazione. Al momento della predisposizione dei presentazioni, tutti i film di giocare non appena si fa clic. Tuttavia, voglio cambiare questo per iniziare a giocare automaticamente non appena la diapositiva è visto. Questo questo deve essere fatto per un sacco di presentazioni, quindi non c'è modo di farlo manualmente.
Ho trovato la proprietà PlaySettings.PlayOnEntry
, ma io non riesco a capire come usarlo. Ho trovato diversi esempi come fare questo con un nuovo film per essere incorporato (e poi, solo per Visual Basic), ma dal momento che i film sono già incorporati, questo non è quello che voglio.
Inoltre ho idea di come io possa effettivamente accedere a qualsiasi oggetto sulla diapositiva corrente, forse c'è un modo per verificare se una forma è un file video e poi cambiare sopra impostazione, ma il MSDN-Reference non è molto utile su uffici-argomenti. Sto utilizzando PowerPoint 2007 e Visual Studio 2010 se quello che conta.
Soluzione 2
ottenuto. La ricerca attraverso tutte le forme della presentazione e filtrando le opere film:
//While iterating through all slides i:
objShapes = objPres.Slides[i].Shapes;
foreach (Microsoft.Office.Interop.PowerPoint.Shape s in objShapes) {
if(s.Name.Contains(".wmv")){
s.AnimationSettings.PlaySettings.PlayOnEntry = MsoTriState.msoTrue;
}
}
Altri suggerimenti
@ La soluzione di Lennart è parte di esso, è quindi necessario una pagina di attivazione
var videoAnimation = slide.TimeLine.MainSequence.FindFirstAnimationFor(objShapes);
if (videoAnimation != null)
{
videoAnimation.Timing.TriggerType = PowerPoint.MsoAnimTriggerType.msoAnimTriggerWithPrevious;
}