我正在使用SARXOS
网络摄像头api和
我通过网络摄像头编写简单的java swing qr code
扫描程序,但没有查看相机屏幕到面板。
public class WebCamQRCode extends javax.swing.JFrame implements Runnable, ThreadFactory {
/**
* Creates new form WebCamQRCode
*/
private static final long serialVersionUID = 6441489157408381878L;
private Executor executor = Executors.newSingleThreadExecutor(this);
private Webcam webcam = null;
private WebcamPanel panel = null;
public WebCamQRCode() {
initComponents();
privateinitComponents();
}
public void privateinitComponents() {
setTitle("Read QR With Webcam");
Dimension size = new Dimension(640, 480);
webcam = Webcam.getWebcams().get(0);
webcam.setViewSize(size);
panel = new WebcamPanel(webcam);
panel.setPreferredSize(size);
photopanel.add(panel);
photopanel.setVisible(true);
executor.execute(this);
}
代码正确运行且scan qr image
但未查看相机屏幕面板
答案 0 :(得分:0)
我猜测initComponents()是自动生成的Netbeans函数。如果这是正确的,它会布置组件,然后调用pack()。在返回之后更改布局通常不起作用。使用Netbeans GUI构建器的更好方法是在Design视图中选择photopanel,然后右键单击弹出菜单并选择“Customize Code”,然后将您在此处为privateinitComponents提供的代码粘贴到CustomCode对话框中,以便在调用之前调用它。外框是打包的。您还需要检查并可能调整photopanel的大小。