2011-10-23 8 views
0

私はいくつかのコンポジットを持っているので、ユーザがこのコンポジットを開くとイベントを発生させるハンドラをそのうちの1つに追加したいと思います。ハンドラはありますか?gwtコンポジットオープン/可視ハンドラ

は、イベントを発生するための良い/簡単な方法は、GWTのコードではJQueryをエミュレートGQueryライブラリを使用することであるあなたに

答えて

0

ありがとうございます。 それはあなたがのようなものを行うことができます:あなたのプロジェクトにGQueryに依存関係を追加する気にならないのであればyourWidgetのblurイベントを発射する

$(yourWidget).blur(); 

を、例えば...、これは移動するための方法であります私の考えでは。私はあなたが純粋なGWTにそれを行うだろうかわからないが、それは明らかに可能だ

$(yourWidget).click(new Function() { 
    public boolean f(Event e) { 
    e.preventDefault(); 
    return false; 
    } 
} 

したいことがあります...:のように あなたも、イベントが発生した後に呼び出される関数を提供することができますGQueryがどのようにそれを行うのか見てみましょう。

http://code.google.com/p/gwtquery/

+0

ちょっと複雑に聞こえます。私はもっ​​と簡単な解決策が必要だと思います。私は別の言葉でそれを説明する。私はそれにいくつかのコンポジットを持つタブがあります。ユーザーがそれらの1つをクリックすると、コンポジットがユーザーに表示されます。このケースでは、メソッドを開始したいと思いますが、ハンドラがあるかどうかわかりません。 – ph09

+1

TabPanelのタイプは何ですか?たとえば、TabLayoutPanelの場合は、addSelectionHandler(..)を呼び出してSelectionHandler を追加できます。 onSelection(SelectionEvent )メソッドは、ユーザーがタブを変更するたびに呼び出されます。次に、Compositeの1つを動的に取り込むなど、必要な操作を行うことができます。 – Renato

+0

しかし、とにかく、誰かがあなたのコンポジットをクリックすると、そのコンポジットがユーザに表示されます...あなたはどういう意味ですか?コンポジットは大きくなる???または、コンポジットが作成され、表示されますか?どちらの場合でも、あなたはonClickイベントを受け取っている必要がありますか?または、あなたの問題はクリックイベントを得ることですか? – Renato