java 桌面程序运行出问题

来源:互联网 发布:手机淘宝卖家版下载 编辑:程序博客网 时间:2024/05/21 06:55

这是我的代码,有三个类,当在当前类用main方法运行正常,新建一个view类用main方法运行这两个播放flash的类,upFlash类的视频不会往下一个播放了,请高手找一下原因..谢谢

UpFlash 类
public class UpFlash extends JPanel implements Runnable {
 private static final long serialVersionUID = 1L;
 int i = 0;
  public UpFlash() {  
    super(new BorderLayout());  
    UIUtils.setPreferredLookAndFeel();  
    NativeInterface.open();  
    SwingUtilities.invokeLater(new Runnable() {  
      public void run() {  
        JFrame frame = new JFrame("");  
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
        frame.getContentPane().add(videoFlash(), BorderLayout.CENTER);  
        frame.setUndecorated(true);
        frame.setSize(1360, 768);  
        Point p = new Point(0, 0);
        frame.setLocation(p);
        frame.setVisible(true);  
      }  
    });  
  }
private Component videoFlash() {
 JPanel flashPlayerPanel = new JPanel(new BorderLayout());  
    final JFlashPlayer flashPlayer = new JFlashPlayer();  
    flashPlayer.load(new File("VideoLoop(2).swf").getAbsolutePath());
    flashPlayerPanel.add(flashPlayer, BorderLayout.CENTER);  
    add(flashPlayerPanel, BorderLayout.CENTER);  
    flashPlayer.addFlashPlayerListener(new FlashPlayerListener() {  
      public void commandReceived(FlashPlayerCommandEvent e) { 
       File[] file = new File("resourse/video").listFiles();
       if("start".equals(e.getCommand())) {
        flashPlayer.invokeFlashFunction("playVideoByPath", file[0]);
       }
       if("complete".equals(e.getCommand())){
        if(i < file.length - 1){
         i++;
        }else{
         i = 0;
        }
        flashPlayer.invokeFlashFunction("playVideoByPath", file[i]);
       }
     }
   });
    return flashPlayerPanel;
}

 public void run() {
 }  

DownFlash类
public class DownFlash extends JPanel  implements Runnable{  
 
 private static final long serialVersionUID = 1L;


public DownFlash() { 
   super(new BorderLayout());
   UIUtils.setPreferredLookAndFeel();  
     NativeInterface.open();  
     SwingUtilities.invokeLater(new Runnable() {  
       public void run() {  
         JFrame frame = new JFrame();  
         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);  
         frame.getContentPane().add(picFlash(), BorderLayout.CENTER);  
         frame.setSize(1360, 768);  
         Point p = new Point(0, 0);
         frame.setLocation(p);
         frame.setUndecorated(true);
         frame.setVisible(true);  
       }  
     }
     );  
  }
private Component picFlash() {
 JPanel flashPlayerPanel = new JPanel(new BorderLayout());  
    final JFlashPlayer flashPlayer = new JFlashPlayer();  
    flashPlayer.load(new File("loadPic.swf").getAbsolutePath());  
    flashPlayerPanel.add(flashPlayer, BorderLayout.CENTER);  
    add(flashPlayerPanel, BorderLayout.CENTER);  
    flashPlayer.addFlashPlayerListener(new FlashPlayerListener() {  
      public void commandReceived(FlashPlayerCommandEvent e) { 
       if(e.getCommand().equals("start")){
        File[] file = new File("resourse/image").listFiles();
        for(int i = 0; i < file.length; i ++){
         try {
     flashPlayer.invokeFlashFunction("loadCurrentPic", file[i]);
     Thread.sleep(3000);
     if(i == file.length-1){
      i = -1;
     }
    } catch (Exception e1) {
     System.out.println("循环出错");
    }
        }
       }
      }  
    });
    return flashPlayerPanel;
}

 public void run() {
  
 }
}

 

 

view类
public class View extends JFrame implements Runnable{
 private static final long serialVersionUID = 1L;

  public static void main(String[] args) {
   UpFlash up = new UpFlash();
   DownFlash down = new DownFlash();
    new Thread(down).start();
    new Thread(up).start();
  }
  
  public void run() {
   
  }
}

原创粉丝点击