Ich muss verschiedene SWF-Dateien in einer C# -Anwendung wiedergeben.Warum wird eine SWF-Datei in C# nicht angehalten, wenn AxShockwaveFlash verwendet wird
Sie scheinen zu spielen gut, aber zu versuchen, es zu pausieren hat keine Wirkung beim ersten Mal und weiß das Panel, wenn ich es erneut versuche.
Der Code, den ich verwende, ist unten.
Auch Rücklauf & vorwärts haben keine Wirkung.
Irgendwelche Kommentare oder Hilfe würden geschätzt.
David Knight
namespace MyUI
{
public partial class ABWithSWF : MyAbstractABFrm
{
// Keep Track of whats happening
enum StateOfPlay {NotSet, Playing, Paused };
private AxShockwaveFlashObjects.AxShockwaveFlash axShockwaveFlashCube = new AxShockwaveFlashObjects.AxShockwaveFlash();
StateOfPlay playState = StateOfPlay.NotSet;
public ABWithSWF()
{
InitializeComponent();
pnlSwf.Controls.Add(axShockwaveFlashCube);
axShockwaveFlashCube.Dock = DockStyle.Fill;
}
// One button that is either play or pause
private void btnPlay_Click(object sender, EventArgs e)
{
// File to play
string path = string.Format(@"{0}\graphical summary.swf", Utils.GetSWFPath());
switch (playState)
{
case StateOfPlay.Paused:
axShockwaveFlashCube.Play();
btnPlay.ImageIndex = 3;
playState = StateOfPlay.Playing;
break;
case StateOfPlay.Playing:
axShockwaveFlashCube.StopPlay();
btnPlay.ImageIndex = 4;
playState = StateOfPlay.Paused;
break;
case StateOfPlay.NotSet:
axShockwaveFlashCube.LoadMovie(0, path);
axShockwaveFlashCube.Play();
btnPlay.ImageIndex = 4;
playState = StateOfPlay.Playing;
break;
}
}
private void button2_Click(object sender, EventArgs e)
{
axShockwaveFlashCube.Rewind();
}
private void button3_Click(object sender, EventArgs e)
{
axShockwaveFlashCube.Forward();
}
}
}