Я пытаюсь установить выбранные записи объекта таблицы ListGrid в SmartGWT, но не могу найти способ сделать это. Я знаю, что есть функция getSelectedRecords(), но нет подходящей функции setSelectedRecords(). Я пытался проверить, будет ли работать set/getSelectedState(), но GWT жалуется на необходимость первичного ключа и объекта DataSource. Есть ли способ установить выбор ListGrid?
Настройка выбора ListGrid в SmartGWT
Ответы (1)
Для этого вы можете использовать один из selectRecords()
, например:
public void onModuleLoad()
{
VLayout main = new VLayout();
final ListGrid grid = new ListGrid();
grid.setHeight(500);
grid.setWidth(400);
grid.setFields(new ListGridField("name", "Name"));
grid.setData(createRecords());
final IButton button = new IButton("Select some");
button.addClickHandler(new ClickHandler() {
public void onClick(ClickEvent event)
{
grid.selectRecords(new int[]{2, 3}); //This will select index 2 and 3
}
});
main.addMember(grid);
main.addMember(button);
RootPanel.get().add(main);
}
private ListGridRecord[] createRecords()
{
return new ListGridRecord[]{
createRecord("monkey"),
createRecord("banana"),
createRecord("orange"),
createRecord("sun")
};
}
private ListGridRecord createRecord(String name)
{
ListGridRecord record = new ListGridRecord();
record.setAttribute("name", name);
return record;
}
person
Mia Clarke
schedule
06.03.2011
Фу. Почему мне кажется, что они скрывают функции от меня? Спасибо.
- person therin; 07.03.2011
@therin Мне знакомо это чувство, эти интерфейсы действительно раздуты и непоследовательны. Рад, что смог помочь.
- person Mia Clarke; 07.03.2011