当我使用horizontalSpan时图像不显示,但是当我使用widthPercentage时图像完美显示。如何跨越ScaleImageLabel?
我的代码:
TableLayout tm=new TableLayout(4,6);
tm.setGrowHorizontally(true);
Container con=new Container(tm);
con.setScrollableY(true);
hi.add(BorderLayout.CENTER,con);
TableLayout.Constraint cs;
Image icon=profilbillede.scaled(800, -1);
ScaleImageLabel lb=new ScaleImageLabel(icon);
lb.setBackgroundType(Style.BACKGROUND_IMAGE_SCALED_FIT);
con.add(tm.createConstraint().horizontalSpan(2),lb);发布于 2018-02-24 12:51:00
下面的代码之所以有效,是因为我删除了span。表需要自动计算列宽,除非您显式地告诉它列的with。
当你使用span时,我们不知道宽度是应用于第一列还是第二列,所以它被忽略了,因为假设你有跨转的理由,而不是使用一列。在这种情况下,您可以通过首选大小或通过width元素在不同的单元格中定义宽度。
作为附注,在将图像添加到ScaledLabel之前,不需要对其进行缩放,您将进行双倍缩放,这会降低图像的外观。
Form hi = new Form("Table", new BorderLayout());
TableLayout tm=new TableLayout(4,6);
tm.setGrowHorizontally(true);
Container con=new Container(tm);
con.setScrollableY(true);
hi.add(BorderLayout.CENTER,con);
TableLayout.Constraint cs;
Image icon=duke.scaled(800, -1);
ScaleImageLabel lb=new ScaleImageLabel(icon);
lb.setBackgroundType(Style.BACKGROUND_IMAGE_SCALED_FIT);
con.add(tm.createConstraint(),lb);
hi.show();

https://stackoverflow.com/questions/48953891
复制相似问题