JX-Browserview与系统已有内容重叠

JX-Browserview overlap existing content of the system

我目前在将 JX-Browser 集成到现有软件中时遇到了一些 UI 问题。

  1. 问题 1:背景菜单项被 JX-Browser 视图隐藏

  1. 问题2:还原模式下托架J-Frame和Panel可以分离

我正在使用 JX_Browser 6.6 版本。 但重要的是,如果我使用5.1版本,以上问题都消失了

代码示例:

public class JXBrowserAdapter extends JPanel
{   

   private Browser browser;

   public JXBrowserAdapter()
   {
     this.setLayout(new BorderLayout());
     initializeBrowserLogin();
     initializeBrowser();
   }

private void initializeBrowser()
{ 
  BrowserPreferences.setChromiumSwitches( GrowthChartConstants.DISABLE_WEB_SECURITY,
    GrowthChartConstants.ALLOW_FILE_ACCESS_PROPERTY);

  browser = new Browser();
  final BrowserView browserView = new BrowserView(browser);
  browser.setDialogHandler(new DefaultDialogHandler(browserView));
  browser.setPopupHandler(new DefaultPopupHandler());

  this.add(browserView, BorderLayout.CENTER);
}

Java版本:1.6/Windows7

请帮我解决这个问题。

JxBrowser 6.0及以上版本,默认启用重量级渲染模式。据我所见,在您的应用程序中,最好使用轻量级渲染模式。

仅供参考,JxBrowser 5 中默认启用轻量级渲染模式。这就是为什么您在 JxBrowser 5 中看不到此问题的原因。

要在 JxBrowser 6 中启用轻量级渲染模式,请使用以下代码:

Browser browser = new Browser(BrowserType.LIGHTWEIGHT);

我发现使用 JPopupMenu 可以解决您的问题。在我们的例子中,出于其他原因我们需要硬件加速渲染模式,所以使用这个 JPopupMenu class 帮助很大。

JPopupMenu.setDefaultLightWeightPopupEnabled(false);