2013-03-08 2 views
0

Я этот код, который я использую, чтобы сделать продукт в макете сетки с использованием FlexTable:Установить виджет на Flextable

 @Override 
     public void onSuccess(Map<Long, Product> mp) { 
      int i = 0; 
      int j = 0; 

      GWT.log("Success list all products count="+mp.size()); 

      Iterator it = mp.entrySet().iterator(); 
      while (it.hasNext()) { 
       Map.Entry pairs = (Map.Entry)it.next(); 

       Product product = (Product) pairs.getValue(); 
       ProductWidget pw = productInstance.get(); 
       pw.setTitle(product.getName()); 
       pw.setImageUrl(product.getImageUrl()); 
       pw.setContent(product.getInfo()); 

       flextable.setWidget(i, j, pw); 
       i = j > 3 ? i : i++; 
       j++; 
       it.remove(); // avoids a ConcurrentModificationException 
      } 

     } 

Map тр вернулся 4 продукты будут отрисованы как виджет, однако только 3 визуализируется на Flextable, что может быть неправильным в этом коде?

+0

'i = j> 3? i: i ++; j ++; ' что именно вы делаете по этому коду? Просьба указать ваше требование, совместив продукты с метрикой 3x3? – Dipak

+0

yes 3x3, я на самом деле решил это уже, но ответы будут оценены ... – xybrek

+0

на самом деле его 3 столбца и любое количество строк – xybrek

ответ

0
flextable.setWidget(i, j, pw); 
i = j > 2 ? i++:i; 
j = j > 2 ? 0 : j++; 

Я думаю, что это будет сделано. 3 col и бесконечные строки.