我正在寻找某种具有子菜单支持的弹出菜单的 GWT 库;我的意思是这样的, 但没有上部菜单栏,因为我需要让它在某些按钮点击时可见;
像这样而不是菜单栏:
所以我需要你的实用建议,我在哪里可以找到支持这种组件的 gwt 库?我知道这是弹出菜单组合,但我有兴趣找到最佳框架解决方案或不太重的东西......
PS> GWT 2.3
谢谢
仅使用本机 GWT 的 BareBones 实现将如下所示:
public void onModuleLoad()
{
MenuBar options = new MenuBar( true );
MenuBar gwtPopup = new MenuBar( true );
options.addItem( "GWT", gwtPopup );
MenuItem entryPoint = new MenuItem( new SafeHtmlBuilder().appendEscaped( "EntryPoint" ).toSafeHtml() );
entryPoint.setScheduledCommand( new ScheduledCommand()
{
public void execute()
{
Window.alert( "hello" );
}
} );
final DialogBox menuWrapper = new DialogBox( true );
menuWrapper.add( options );
gwtPopup.addItem( entryPoint );
Button showMenu = new Button( "Click me", new ClickHandler()
{
public void onClick( ClickEvent event )
{
menuWrapper.showRelativeTo( menuWrapper );
}
} );
RootPanel.get().add( showMenu );
}
我们通常发现很难设置弹出窗口、菜单项的样式并处理其他古怪的行为。因此,我们只是将按钮序列包装在垂直面板中,根据需要设置样式并将其显示在 DialogBox 中。
据我所知,没有专门针对弹出窗口和子菜单的 UI 库。至于您的要求,您可以为此实现自己的小部件。创建一个流程面板或水平面板。在其中插入 2 张图像,一张用于菜单图像,另一张用于箭头图像。将点击处理程序添加到您的箭头图像并显示所需的弹出窗口。