Java 如何选择wicket表中的行

Java 如何选择wicket表中的行,java,wicket,Java,Wicket,可能重复: 我有一张有播放机的桌子。现在我想选择一排球员,然后按下按钮注册他。如何选择表中的行?您可以查看。它显示了可以在wicket中使用的大多数表,它们都有一个“选择”操作,这是一个带有自定义面板的abstractcolumn ... columns.add(new AbstractColumn<Contact, String>(new Model<String>("Actions")) { public void populateIte

可能重复:

我有一张有播放机的桌子。现在我想选择一排球员,然后按下按钮注册他。如何选择表中的行?

您可以查看。它显示了可以在wicket中使用的大多数表,它们都有一个“选择”操作,这是一个带有自定义面板的abstractcolumn

...

 columns.add(new AbstractColumn<Contact, String>(new Model<String>("Actions"))
    {
        public void populateItem(Item<ICellPopulator<Contact>> cellItem, String componentId,
            IModel<Contact> model)
        {
            cellItem.add(new ActionPanel(componentId, model));
        }
    });

...

class ActionPanel extends Panel
{
    public ActionPanel(String id, IModel<Contact> model)
    {
        super(id, model);
        add(new Link("select")
        {
            @Override
            public void onClick()
            {
                selected = (Contact)getParent().getDefaultModelObject();
            }
        });
    }
}

public Contact getSelected()
{
    return selected;
}

public void setSelected(Contact selected)
{
    addStateChange();
    this.selected = selected;
}
。。。
添加(新抽象列(新模型(“操作”))
{
public void populateItem(项cellItem、字符串componentId、,
IModel模型)
{
添加(新的ActionPanel(componentId,model));
}
});
...
类ActionPanel扩展面板
{
公共操作面板(字符串id,IModel模型)
{
超级(id,型号);
添加(新链接(“选择”)
{
@凌驾
公共void onClick()
{
所选=(联系人)getParent().getDefaultModelObject();
}
});
}
}
公共联系人getSelected()
{
返回选中的;
}
已选择公共联系人(已选择联系人)
{
addStateChange();
this.selected=selected;
}

希望这有帮助

是的,这很有效,但只有当我点击链接时。当我选择行时,我想选择玩家检查这个问题。它正是您想要的: