Мне нужно воспроизводить различные SWF-файлы в приложении C #.
Кажется, что они начинают играть нормально, но попытка сделать паузу в первый раз не имеет никакого эффекта, и если я попробую еще раз, панель исчезает.
Код, который я использую, ниже.
Также перемотка вперед и назад не имеет никакого эффекта.
Любые комментарии или помощь будут оценены.
Дэвид Найт
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();
}
}
}