1

を作成MenuBarしていますが、表示するサブ要素があるときに小さなアイコンを表示したいと考えています。私はこれを次のように達成できると思った:

interface ActionHeroResources extends ClientBundle, MenuBar.Resources
{
    @Source("actionhero.css")
    public ActionHeroCSS css();

    @Override
    @Source("agw-dropdown.png")
    ImageResource menuBarSubMenuIcon();
}

private static final ActionHeroResources RESOURCES = GWT.create(ActionHeroResources.class);

MenuBar actionMenu = new MenuBar(true, RESOURCES);

public ActionHero()
{
    actionMenu.addItem("Select", aSelectMenuFullOfOptions);
}

しかし、メニューには「選択」という言葉が表示され、アイコンはありません。後で同じリソースから menuBarSubMenuIcon().getURL() を使用するため、ImageResource が正しく機能していることは確かであり、イメージは期待どおりに表示されます。GWT によって生成された HTML では、子として MenuBars を持つアイテムと Commands を持つアイテムの間にまったく区別がありません。私のCSSは正常に動作しています。

何かご意見は?

4

3 に答える 3

2

次のように、.gwt-MenuBar-vertical .subMenuIcon-selected の CSS スタイルをオーバーライドしてみてください。

.gwt-MenuBar-vertical .subMenuIcon-selected {
    background: none;
}

私はこれを自分で選択したアイテムに使用していますが、うまく機能します。

.gwt-MenuBar-vertical .subMenuIcon-selected {
    background: url(images/hand_pointer.png) no-repeat 0px 0px;
}
于 2011-10-28T09:57:45.163 に答える
0

問題は、サブメニューを形成するポップアップ パネルが親からスタイル名を取得し、依存するスタイル名を追加することでした。元のスタイル名は難読化されているため、依存するスタイル名がどうなるかを予測する方法はわかりません。より一般的な .gwt-MenuBar ポップアップ スタイル名を使用して、この問題を回避しました。これが機能するのは、私のプログラムには 1 つのスタイルのポップアップ メニューしかないからです。

gwt の今後のリリースでは、MenuBar のスタイルが、メニューバーに渡されるリソースにより近くなり、従属するスタイル名の使用が減ることを願っています。

于 2011-12-08T00:27:14.987 に答える
0

次のように、サブメニューに表示される の css ルールを簡単に設定できます。

.subMenuIcon > img {
    /* override gwt sub menu icon */
    width: 6px !important;
    height: 11px !important;
    background: url('your-image-relative-path.png') no-repeat 0px 0px !important;
}
于 2013-04-30T08:23:31.557 に答える