当前位置: 首页 > 知识库问答 >
问题:

GXT菜单按钮的样式

鲜于勇
2023-03-14

我看到GXT菜单只能通过setMenu()方法在CellButtonBase子类的实例上设置。我想显示一个图像,而不是一个按钮,并显示一个菜单时,用户点击该图像。不幸的是,Image不是CellButtonBase的子类,因此我无法将GXT菜单附加到它。那么,如果我必须使用TextButton(这似乎是我在这里的唯一选择),我如何使它看起来像一个图像呢?没有关于这个主题的文档或示例。我问过Sencha GXT论坛的支持,但没有得到回应。

共有1个答案

鲁华茂
2023-03-14

好的,我找到了一种没有文本按钮的方法。添加一个图像并在单击处理程序中调用menu.show(...)。

  private void createMenu() {
    menu = new Menu();

    Image menuButtonImage = new Image(Resources.INSTANCE.nav_preferences());
    menuButtonImage.addStyleName(CSS.header_bar_icon());
    menuButtonImage.addClickHandler(new ClickHandler() {
      @Override
      public void onClick(ClickEvent event) {
        menu.showAt(getAbsoluteLeft(), getAbsoluteTop() + MENU_OFFSET_FROM_IMAGE_TOP);
      }
    });
    menu.addShowHandler(new ShowEvent.ShowHandler() {
      @Override
      public void onShow(ShowEvent event) {
        highlight();
      }
    });
    menu.addHideHandler(new HideEvent.HideHandler() {
      @Override
      public void onHide(HideEvent event) {
        removeHighlight();
      }
    });
    menu.setStyleName(CSS.menu());
    add(menuButtonImage);

  }
  private void addUserSettings() {
    MenuItem userSettingsItem = new MenuItem("User Settings");
    userSettingsItem.addSelectionHandler(new SelectionHandler<Item>() {
      @Override
      public void onSelection(SelectionEvent<Item> event) {
        _coreLayout.showUserSettingsPage();
      }
    });
    userSettingsItem.setStyleName(CSS.menu_item());
    menu.add(userSettingsItem);
  }

  private void highlight() {
    addStyleName(CSS.header_bar_icon_box_selected());
  }

  private void removeHighlight() {
    removeStyleName(CSS.header_bar_icon_box_selected());
  }
 类似资料:
  • 我想知道当菜单按钮的菜单当前打开时,是否可以为菜单按钮设置特定样式(例如,背景色为黑色)。也就是说,如果菜单未打开,则其背景色不应为黑色。我可以在CSS文件中这样做吗?或者甚至可以这样做吗? 我知道菜单按钮有一个显示的方法,它指示我,菜单是否打开,但我不知道应用这个,以便在菜单打开时按钮颜色会发生变化。 这是菜单按钮:https://docs.oracle.com/javase/8/javafx/

  • 问题内容: 我试图更改菜单按钮中的样式。我可以更改菜单按钮样式,但不能更改其菜单项。无论我尝试什么,菜单按钮内的菜单项都保持不变。 现在如何更改遗漏的颜色? 问题答案: MenuButton在Menu内部使用并具有类似的API。这样就MenuButton包含MenuItems列表,就像Menu。因此,我认为你需要尝试一起玩.menu,.menu-button并.menu-item在caspian.

  • pre { white-space: pre-wrap; } 菜单按钮(Menu Button)包含一个按钮(button)和一个菜单(menu)组件,当点击或移动鼠标到按钮上,将显示一个对应的菜单。 为了定义一个菜单按钮(Menu Button),您应该定义一个链接按钮(Link Button)和一个菜单(menu),下面是一个实例:     <div>         <a href="#"

  • pre { white-space: pre-wrap; } jQuery EasyUI 插件 扩展自 $.fn.linkbutton.defaults。通过 $.fn.menubutton.defaults 重写默认的 defaults。 菜单按钮(menubutton)是下拉菜单的一部分。它与链接按钮(linkbutton)及菜单(menu)有关。显示链接按钮(linkbutton),隐藏菜单

  • 问题内容: 如何设置HTML复选框,单选按钮和下拉菜单的样式?可以吗 我想为复选框或单选按钮使用图像,对列表使用相同的图像-下拉箭头在大多数情况下看起来不太好。 问题答案: 请参阅jQuery插件的2个链接(用于样式化复选框和单选按钮): http://line25.com/articles/jquery-plugins-for-styling-checkbox-radio- buttons ht

  • 使用任何按钮都可以触发一个弹出菜单,只需要把它放置在一个.btn-group中,并提供适当的弹出菜单标记。 插件依赖 按钮弹出菜单需要你的Bootstrap中调用了弹出菜单插件。 内容 单按钮弹出菜单 通过一些基本的标记变化,将一个按钮变成一个弹出菜单。 <!-- Single button --> <div class="btn-group"> <button type="button"