2

テキストボックスを持つカスタム ヘッダーを作成する必要があるという要件があります。入力するときは、一致するレコードをフィルタリングする必要があります。

次のリンクを使用して、カスタム ヘッダーを作成しました。私の CustomHeader クラスは

final public class ColumnHeaderFilterCell extends AbstractCell<String> {

interface Templates extends SafeHtmlTemplates {
@SafeHtmlTemplates.Template("<div >{0}</div>")
SafeHtml text(String value);

@SafeHtmlTemplates.Template("<div >
<input type=\"text\" value=\"\" name=\"{0}\"/></div>")
SafeHtml filter(String value);
}

private static Templates templates = GWT.create(Templates.class);

@Override
public void render(Context context, String value, SafeHtmlBuilder sb) {
if (value == null) {
    return;
}

SafeHtml renderedText = templates.text(value);

sb.append(renderedText);

SafeHtml renderedFilter = templates.filter(value);
sb.append(renderedFilter);
}
}

*ColumnHeader class is* 


public static class ColumnHeader extends Header<String> {

private String name_;

public ColumnHeader(String name) {
    super(new ColumnHeaderFilterCell());
    this.name_ = name;
    //setHeaderStyleNames("columnHeader " + field);
}

@Override
public String getValue() {
    return name_;
}
}

*Adding a column as*

ColumnHeader docColHeader = new ColumnHeader("Documentaton");
cellTable.addColumn(documentaton, docColHeader);

今私の質問は、セルテーブルヘッダーであるテキストボックスに addKeyUpHandler() イベントを追加するにはどうすればよいですか?

テキストボックスが別の場所にある場合、次のリンクを使用して celltable にフィルタリングを実装しました 。渡し方がわからない。

誰でも私を助けてくれませんか

4

1 に答える 1

1

セル内のイベント処理は、ウィジェットのようにイベント ハンドラーを介して行われるのではなく、下位レベルで行われます。https://developers.google.com/web-toolkit/doc/latest/DevGuideUiCustomCells#cell-onBrowserEventを参照してください

于 2012-08-22T14:05:03.380 に答える