java 播放flash

Java程序可以用Jflashplayer来播放swf,从而做到了Java中集成swf的效果。
这个方案按道理来说比较正统,缺点有两个
Jflashplayer并不完全支持swf的所有特性,只是有选择地支持,因此一些使用高级版本flash/flex开发的程序中用到的API可能得不到支持。
Jflashplayer价格相对来说比较贵,并不是所有的开发者都支付得起的。


/**

 * MyFlash: 播放flash
 * 
 * @author missingu
 * By 2013.11.1
 */
package my.audio.swt;


import java.io.File;
import java.io.FileNotFoundException;
import javax.swing.JFrame;
import com.jpackages.jflashplayer.*;


public class MyFlash extends JFrame
{
/**

*/
private static final long serialVersionUID = 1L;

FlashPanel fPanel ;

public MyFlash() throws FileNotFoundException, JFlashLibraryLoadFailedException, JFlashInvalidFlashException
{
initialMyflash() ;
File file = new File("dealerMap.swf") ;
try
{
fPanel = new FlashPanel(file);
} catch (FileNotFoundException e)
{
e.printStackTrace();
// TODO: handle exception
}catch (JFlashLibraryLoadFailedException e) {
// TODO: handle exception
e.printStackTrace();
}
catch (JFlashInvalidFlashException e) {
// TODO: handle exception
e.printStackTrace();
}

FlashPanel.setRequiredFlashVersion("6");

fPanel.setVariables("myGreeting=hi&myNumber=1&myVar=good%20job");
fPanel.setBounds(0, 0, 800, 600); 
fPanel.play();
this.add(fPanel);

//this.show(true);
this.setVisible(true);
fPanel.play(); // 要是没有,可能不直接显示


}
public static void main(String[] args) throws FileNotFoundException, JFlashLibraryLoadFailedException, JFlashInvalidFlashException
{
new MyFlash() ;
}



public void initialMyflash()
{
this.setSize(800, 600);
//this.isVisible() ;
this.setResizable(false); // 禁止窗口最大化

}

}


ps:

jflashpanel 下载地址:

http://download.csdn.net/detail/missingu1314/6501967


另外可以采用Java的官方开发团队提供了的DIC (JDesktop Integration Components)软件包,可以在Java程序中直接集成操作系统的浏览器(比如IE)来实现浏览器功能,因此,首先在程序中使用JDIC集成一个NativeBrowser,然后在NativeBrowser中播放含swf文件的网页,也同样可以满足这个需求。


你可能感兴趣的:(java 播放flash)