2009-08-25 5 views
0

グリッドやボタンのコンテキストでクリックした行をどのように参照できますか?gwtのグリッドとボタン

意味: ボタンclickHandlerはclickEventオブジェクトを受信します。どうすればそれからテーブルのデータにアクセスできますか?

おかげ 私

答えて

0

あなたのクリックハンドラがアクセス権を持っていますモデルのいくつかの並べ替えを保存する必要があります。モデルでは、行のデータをボタンと関連付けることができます。 GWTでこれを行う方法はありません。

1

これを行うにはGWTに組み込まれていませんし、それをそこに入れることも意味がありません。あなたはグリッドに言及していますので、私はあなたが推測しているのは、何らかの形式の行列におおよそ近似したデータを持っていて、たくさんの前提を持っていて、おおよそのテクニックは次のようなものです:

final Map<Button,Object> buttonToCellMap = new HashMap<Button,Object>(); 
ClickHandler myClickHandler = new ClickHandler() { 
    public void onClick(ClickEvent event){ 
    Object thingInCell = buttonToCellMap.get((Button)event.getSource()); 
    //do something with the thing in your grid here 
    } 
} 


for(List yourRow : matrix){ 
    for(Object yourObject : yourRow){ 
    //logic to make your grid cell goes here 

    Button aButton = new Button(); 
    buttonToCellMap.put(aButton,yourObject); 
    aButton.addClickHandler(myClickHandler);   
    } 
} 

これは、対応するボタンがクリックされたときに、グリッド内の位置x、yの気になるオブジェクトにアクセスできるようにします。

+0

これは、これと同じ問題のために私が過去に行ったこととほぼ同じです。私はおそらく私の元の応答にそれを入れておくべきだった。 – Carnell

関連する問題