2016-03-22 21 views
0

5 sütun ile bir vaadin masam var. Son sütunda (en sağdaki), her zaman aynı miktarda genişliğe sahip olan düzenleme/silme düğmelerine sahibiz.Vaadin Tablo sütunları yatay kaydırma çubuğu olmadan otomatik boyutlandırma/otomatik ölçeklendirme

Son sütunun genişliğini belirli bir genişliğe ve diğer tüm sütunlara belirli bir setColumnExpandRation(10); olarak ayarladığımda, normal sütunların otomatik ölçeklendirilmemiş olması dışında her şey tamamdır.

Belirli bir genişliğe ve otomatik ölçeklendirilecek diğer tüm sütunlara (setColumnWidht(-1)) son sütunu verdiğimde, normal sütunlar içeriğe bağlı olarak boyutlandırılır, ancak tüm tablo genişliği çok büyüktür ve yatay kaydırma çubuğunu gösterir.

Wrong width

aşağıdaki resimde böyle bir durumda örneği Ve java kodu:

Table tb= new Table(); 
    tb.setWidth(100, Unit.PERCENTAGE); 
    tb.setHeight(100, Unit.PERCENTAGE); 
    layout.addComponent(tb); 

    BeanItemContainer<Person> pList = 
     new BeanItemContainer<>(Person.class); 
    for (int i=0; i < 20; i++) 
    { 
     Person p1= new Person("******", "++++++++++", "--++--++--++--++--++--++", "????", "3333 "+i, new Date()); 
     pList.addBean(p1); 
    } 

    tb.setContainerDataSource(pList); 
    tb.setColumnWidth("zip", 20); 
    tb.setColumnExpandRatio("firstName", 1); 

Example of code above

bir son sütun için bir yolu var mı sabit genişlik, ancak hala içeriğe bağlı genişlikleri olması için otomatik boyutlu diğer sütunlar var mı?

+0

Cümle ile ne demek istiyorsun: "normal sütunlar otomatik olarak ölçeklenmez". Normal sütunlar nedir? Genişleme oranı 10 olan sütunlar? –

+0

Anladım, sütunlar oluşturulmamış sütunları kastediyorsunuz. –

+0

En az bir kod örneği her zaman yararlı olur iyi bir cevap olsun :) –

cevap

0

Çözüm, tablonun% 100 genişliğe ayarlanmasıdır. Ardından son sütunun sabit genişliğine sahip olmasını sağlayın.

Diğer sütunları doğru alan kazanmak için zorlamak için genişleme oranı 1 olan diğer sütunlardan yalnızca birini ayarlayın.

Tablo içeren kapsayıcıda% 100 genişlik olmalıdır.

Kaydırma çubukları alırsanız, tablo içindeki metni kaydırmanız gerekir.

+0

Metnin bir bölümünü kesmek istemiyorum. Metnin bir kısmı kesilse bile –

+0

Bu çözümü deneyin ve sonuç nedir. Kaydırma çubuklarını tekrar alıyor musun? –

+0

Soruya küçük bir örnek ekledim. Sütunları daha küçük yapmak yerine h kaydırma çubuğu gösterilir –

İlgili konular