내가 작성한이 코드 조각은 2 개의 패널을 생성합니다. 그 중 하나를 다른 쪽 위에 직접 놓는 것이지만, 문제는 그 사이에 큰 차이가 있다는 것입니다.vaadin 패널 사이의 거대한 공간
아무나 나를 도와 줄 수 있습니까?
코드 :
그것은 당신이 전체 크기로 설정 한layout
의 유형에 따라 달라집니다
Panel panel = new Panel();
Panel Logo = new Panel();
VerticalLayout layout1 = new VerticalLayout();
VerticalLayout layout2 = new VerticalLayout();
panel.setWidth("500px");
panel.setHeight("300px");
Logo.setWidth("500px");
Logo.setHeight("100px");
Logo.addStyleName(Runo.PANEL_LIGHT);
Label label = new Label("test");
label.setWidth(null);
Button test = new Button("test");
first.setStyleName("test");;
first.setClickShortcut(KeyCode.ENTER, null);
layout1.addComponent(test);
layout2.addComponent(label);
layout.addComponent(Logo);
layout.addComponent(panel);
layout.setComponentAlignment(panel, Alignment.MIDDLE_CENTER);
layout1.setComponentAlignment(test, Alignment.MIDDLE_CENTER);
layout2.setComponentAlignment(label, Alignment.MIDDLE_CENTER);
layout.setSizeFull();
layout1.setSizeFull();
layout2.setSizeFull();
setContent(layout);
panel.setContent(layout1);
Logo.setContent(layout2);
확장 비율 메서드의 이름을 입력했습니다. "비율"이 아니라 "비율"입니다. – jupenur
도움을 주셔서 감사합니다. layout.setSizeUndefined(); 트릭을 만들었지 만 구성 요소가 모두 왼쪽에 고정되어 정렬이 작동하지 않습니다. 왜 그런지 알아? – user3702643
부모님 ('layout1'과'layout2')은 풀 사이즈, 즉 너비와 높이가 100 %이기 때문입니다. 이를 수정하기 위해서는'layout1'과'layout2'의 크기를 정의하지 말아야합니다 ('layout1.setSizeUndefined();'). 또한 어쨌든'layout1'과'layout2'는 정말로 필요하지 않다고 생각합니다. 'layout' 바로 아래에'panel'과'Logo'를 추가하십시오. – Abbas