在JFrame1里新建一个JPanel,然后用opencv将摄像头的视频加载到JPanel上,运行一切正常。新建一个JFrame2,里面一个按钮点击弹出JFrame1,JFrame1弹出正常,但是弹出后是一个空白的界面,此时能观察到摄像头的灯已经打开,说明摄像头已经工作了,但是需要三四秒之后才会显示视频画面,不知道是什么原因,初次接触java,java的桌面程序更是第一次弄,在网上查文档,感觉是线程更新方面的问题,不知道对不对,哪位大哥遇到过吗,求解答,求解决办法。谢谢。

解决方案 »

  1.   

    还是先排查问题吧,你可以在JFrame1里就简单写一个JLabel或者JButton显示出来(先不去加载视频),如果这时候不会出现延时显示,那问题应该是出在加载视频的,那就针对该问题去找opencv的api解决,
    如果还是延时显示,那应该是java弹出JFrame的问题,再去找解决方案
      

  2.   

    你把JFrame2新建时,使用new Thread看看,把他放到新起的线程里面。