ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
要处理Swing应用程序中的弹出窗口,您有两种选择: ### 1.注册默认的Swing弹出处理程序实现: ``` browser.setPopupHandler(new com.teamdev.jxbrowser.chromium.swing.DefaultPopupHandler()); ``` ### 2.在您决定要显示新弹出窗口的确切位置(例如,在JFrame,JWindow ,应用程序选项卡中)中注册您自己的实现: ``` browser.setPopupHandler(new PopupHandler() { public PopupContainer handlePopup(PopupParams params) { return new PopupContainer() { public void insertBrowser(final Browser browser, final Rectangle initialBounds) { SwingUtilities.invokeLater(new Runnable() { @Override public void run() { BrowserView browserView = new BrowserView(browser); browserView.setPreferredSize(initialBounds.getSize()); final JFrame frame = new JFrame("Popup"); frame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE); frame.add(browserView, BorderLayout.CENTER); frame.pack(); frame.setLocation(initialBounds.getLocation()); frame.setVisible(true); frame.addWindowListener(new WindowAdapter() { @Override public void windowClosing(WindowEvent e) { browser.dispose(); } }); browser.addDisposeListener(new DisposeListener<Browser>() { public void onDisposed(DisposeEvent<Browser> event) { frame.setVisible(false); } }); } }); } }; } }); ```