2011-06-28 8 views
1

gwtでMenuBarコントロールを使用していて、選択したアイテムを取得したい。私はAPIドキュメントAPI document for MenuBarを読んでいましたが、私を助ける方法が見つかりませんでした。 MenuBarの選択されたアイテムをトラップする方法を教えてください。ユーザーがクリックすると、選択したアイテムを取得します。gwtのメニューバー

答えて

3

あなたの質問に対する答えはコマンドです。 http://google-web-toolkit.googlecode.com/svn/javadoc/2.3/com/google/gwt/user/client/Command.html。あなたはまた、任意のメニュー項目のコマンドの独立を実行することができ

あなたはメニューバーに(またはその子のいずれかに)アイテムを追加するには

Command helloCmd = new Command() { 
    public void execute() { 
    Window.alert("Hello"); 
    } 
}; 
addItem("Hello", helloCmd); 

または

menuItem.setCommand(helloCmd); 

を指定します。

helloCmd.execute(); 
0

getSelectedItem()メソッドが機能しない理由はわかりません。おそらく、ユーザーがクリックしたときにアイテムを持っていたいからでしょうか? MenuBarにどの項目が選択されているかを尋ねるCommandでMenuItemを作成してください。おそらく、あなたのアイテムのいくつかに別々のコマンドを使う方が良いかもしれません。

ニコ

0

私は同じ問題とは、次のように解決してきました:

public class CustomMenuBar extends MenuBar { 

    public CustomMenuBar(boolean isVertical) { 
     super(isVertical); 
    } 

    public MenuItem getSelected() { 
     return super.getSelectedItem(); 
    } 

    public void clearSelected() { 
     super.selectItem(null); 
    } 
} 

、あなたがnullのためにそれを確認することができます(そして、明らかnullでない場合に)あなたの助けIのための

+0

感謝これをチェックアウトします... –

関連する問題