Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

UpdateTableWhenUnfocused.java 1.8KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. package com.vaadin.tests.components.table;
  2. import com.vaadin.data.Container;
  3. import com.vaadin.data.Item;
  4. import com.vaadin.data.util.IndexedContainer;
  5. import com.vaadin.server.VaadinRequest;
  6. import com.vaadin.tests.components.AbstractTestUI;
  7. import com.vaadin.ui.Button;
  8. import com.vaadin.ui.Button.ClickEvent;
  9. import com.vaadin.ui.TabSheet;
  10. import com.vaadin.ui.Table;
  11. public class UpdateTableWhenUnfocused extends AbstractTestUI {
  12. @Override
  13. protected void setup(VaadinRequest request) {
  14. final Table table = createTable();
  15. TabSheet tabSheet = new TabSheet();
  16. tabSheet.addTab(table, "tab1");
  17. tabSheet.setHeight("5000px");
  18. tabSheet.setWidth("100%");
  19. addComponent(tabSheet);
  20. final Button button = new Button("Refresh table");
  21. button.addClickListener(new Button.ClickListener() {
  22. @Override
  23. public void buttonClick(ClickEvent event) {
  24. button.focus();
  25. table.refreshRowCache();
  26. }
  27. });
  28. addComponent(button);
  29. }
  30. private Table createTable() {
  31. Table table = new Table("Table");
  32. table.setImmediate(true);
  33. table.setMultiSelect(true);
  34. table.setSizeFull();
  35. table.setSelectable(true);
  36. Container ds = new IndexedContainer();
  37. ds.addContainerProperty("column", Integer.class, null);
  38. for (int i = 0; i < 500; i++) {
  39. Item item = ds.addItem(i);
  40. item.getItemProperty("column").setValue(i);
  41. }
  42. table.setContainerDataSource(ds);
  43. return table;
  44. }
  45. @Override
  46. protected String getTestDescription() {
  47. return "Clicking the button after selecting a row in the table should not cause the window to scroll.";
  48. }
  49. @Override
  50. protected Integer getTicketNumber() {
  51. return 12976;
  52. }
  53. }