GWT:使用向上/向下按钮交换行的FlexTable

时间:2010-08-19 12:03:09

标签: google-app-engine gwt

我想设计一个FlexTable programmaticaly,如下所示:http://uploadz.eu/images/v4z6gucp2gg8ql9pzj.png

由于OnClick方法无法获取其他参数,因此事件和按钮不知道“它们在哪一行”,我无法告诉按钮“请交换行,您当前与您的好友在哪里在你之上“。 我想知道:这样做的好方法是什么?

1 个答案:

答案 0 :(得分:0)

ClickEvent有一个getSource()方法,其中包含事件的来源,这很有帮助。

public class NiceLabel {
  public final Row row;
  public NiceLabel(Row row, ClickHandler clickHandler) {
    this.row = row;
    addClickHandler(clickHandler);
  }
}

...
// clickHandler has the following:
public void onClick(ClickEvent event) {
  ((NiceLabel) event.getSource()).row.moveUp();
}

通过这种方式,您可以为每个ClickHandler添加相同的NiceLabel,而无需为每一行创建新的。{/ p>