【问题标题】:Vaadin grid context menu does not open/showVaadin 网格上下文菜单无法打开/显示
【发布时间】:2016-11-24 22:49:07
【问题描述】:

我无法显示网格上下文菜单。 Vaadin 7.6.3,vaadin-context-menu 0.7.4。

GridContextMenu gridContextMenu = new GridContextMenu(grid);
gridContextMenu.addGridBodyContextMenuListener(e -> eventGridRowContext(e));

还有处理程序:

private void eventGridRowContext(GridContextMenuOpenEvent e)
{
  Job job = (Job) e.getItemId();

  if(job == null)
  {
    return;
  }

  grid.select(job);

  ContextMenu contextMenu = e.getContextMenu();
  contextMenu.removeItems();
  contextMenu.addItem("Test", e2 -> Notification.show("Test"));
  contextMenu.open(e.getX(), e.getY());
}

我正在参加活动。调试器直接通过 open 调用运行,但没有任何反应。

【问题讨论】:

  • 您是否重新编译了您的小部件集? This articlethis thread 建议您需要这样做才能使插件正常工作
  • @IanA 我正在使用来自 vaadin 的预编译小部件集(vaadin-client-compiled)。
  • 我可能完全错了,因为我对 Vaadin 还很陌生,但我的印象是,如果使用包含小部件的 addons 作为插件小部件集,您将无法使用预编译的小部件集需要编译到应用的widgetset中
  • @IanA 感谢您的建议 - 接下来我将尝试使用自定义小部件集。
  • @IanA 20 小时后...使用自定义小部件集成功了。但是,天哪,正确设置是另一回事。请转换为答案。

标签: java vaadin vaadin7 vaadin-grid


【解决方案1】:

如果您使用的是包含小部件的自定义插件,那么您将无法使用预编译的小部件集,因为需要将插件小部件集编译到应用程序小部件中。

Vaadin Addons documentation 状态...

“大多数附加组件包括小部件,即 Vaadin Java API 中使用的服务器端组件的客户端对应物,如小部件集的角色所示。小部件集需要编译到应用程序中小部件集。”

This article 和 this thread 建议您需要重新编译小部件集才能使 vaadin-context-menu 插件正常工作。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-01
    • 1970-01-01
    • 2014-08-17
    相关资源
    最近更新 更多