public TodayExamWidget() {
self = binder.createAndBindUi(this);
int row =1 ;
gridWidget = new Grid();
gridWidget.resize(row,3);
gridWidget.setSize("100","100");
gridWidget.setText(0,0,"Uncorrected");
gridWidget.addStyleName("gray_cell");
gridWidget.setBorderWidth(1);
gridWidget.getCellFormatter().setWidth(0,0,"160");
gridWidget.getCellFormatter().setWidth(0,1,"60");
gridWidget.getCellFormatter().setWidth(0,2,"60");
visionFlowPanel.add(gridWidget);
}
private void populateVisualAcuity(Grid gridWidget, VisualAcuityCollection visualAcuityCollection) {
int rowCount = gridWidget.getRowCount();
if(!visualAcuityCollection.normal.isEmpty()){
gridWidget.resize(rowCount +1,3);
gridWidget.setText(rowCount -2,0,VisualAcuityType.NORMAL.toString());
gridWidget.setText(rowCount -2,1,visualAcuityCollection.normal.od.distance);
gridWidget.setText(rowCount -2,2,visualAcuityCollection.normal.os.distance);
}
if(!visualAcuityCollection.pinhole.isEmpty()){
gridWidget.resize(rowCount +1,3);
gridWidget.setText(rowCount -2,0,VisualAcuityType.PINHOLE.toString());
gridWidget.setText(rowCount -2,1,visualAcuityCollection.pinhole.od.distance);
gridWidget.setText(rowCount -2,2,visualAcuityCollection.pinhole.os.distance);
}
if(!visualAcuityCollection.binocular.isEmpty()){
gridWidget.resize(rowCount +1,3);
gridWidget.setText(rowCount -2,0,VisualAcuityType.BINOCULAR.toString());
gridWidget.setText(rowCount -2,1,visualAcuityCollection.binocular.od.distance);
gridWidget.setText(rowCount -2,2,visualAcuityCollection.binocular.os.distance);
}
row = rowCount;
}
主要是上面的那个popluteVisualVison 方法, 又没有什么方法让代码 用loop形式改写? 谢谢啦 各位大神门