聆听单击菜单栏的根项 (Vaadin)

Posted

技术标签:

【中文标题】聆听单击菜单栏的根项 (Vaadin)【英文标题】:Listen to a click on a root item of a menu bar (Vaadin) 【发布时间】:2011-09-09 06:52:00 【问题描述】:

简单而简短的问题,但我不太确定一个好的答案。 ;)

是否可以在菜单栏的根项中添加监听器?

我想点击 Edit 项目,应该触发一个事件。

【问题讨论】:

【参考方案1】:

来自Vaadin API documentation:

您可以通过实现 MenuBar.Command 接口来设置在用户点击时触发的命令。

创建一个实现MenuBar.Command接口的类,然后调用MenuBar.addItem添加根项

你也可以像这样跳过类创建:

myMenuBar.addItem("My Item", new MenuBar.Command() 
    void menuSelected(MenuBar.MenuItem selectedItem) 
        // Handle selection
    
);

【讨论】:

当我起初看到那个答案时,我想,这不起作用,因为它正是我拥有的代码。但是再次尝试代码,表明问题出在其他地方,因为现在它按预期工作。不过感谢您的回答。 ;)【参考方案2】:

如果你在 xaml 中做,你不能只在元素中做,比如<Menu... OnClick="...">

【讨论】:

我没有在 xaml 中做任何事情。 UI 是用 Java 编写的,由 GWT 编译器编译为 javascript。但是更改 javascript 并不能直接进行。

以上是关于聆听单击菜单栏的根项 (Vaadin)的主要内容,如果未能解决你的问题,请参考以下文章

菜单栏的VC菜单

如何用java做出左侧是菜单栏,单击,右侧可进行页面切换的效果,求源代码

在 react native 中添加抽屉菜单和底部标签栏的事件处理程序

Codelite菜单栏已被隐藏

JavaFX:整个框架的菜单栏宽度

Qt 工具栏和菜单栏