官术网_书友最值得收藏!

Aligning components on a page

Aligning components is easy in Vaadin. We can align them on the left, on the right, on the top, on the bottom, and also center them vertically or horizontally. In this recipe, we will create a demo application in which we can see how aligning works. We will create three buttons in three different positions, as we can see in the following screenshot:

Aligning components on a page

How to do it...

Carry out the following steps to create and learn how alignment works in Vaadin.

  1. We create a Vaadin project with the main UI class named Demo.
    public class Demo extends UI {…}
  2. We create a class called AligningDemo that is based on the VerticalLayout.
    public class AligningDemo extends VerticalLayout {…}
  3. In the constructor, we create and add all three buttons. The first button is placed on the top left side. We'll do it by the setComponentAlignment() method. As a parameter, we use predefined alignments from the Alignment class.
    public AligningDemo() {
      Button leftButton = new Button("top, left");
      addComponent(leftButton);
      setComponentAlignment(leftButton, Alignment.TOP_LEFT);
  4. The next button is centered in the middle of the page.
      Button centerButton = new Button("middle, center");
      addComponent(centerButton);
      setComponentAlignment(centerButton, Alignment.MIDDLE_CENTER);
  5. And the last button is aligned at the bottom on the right.
      Button rightButton = new Button("bottom, right");
      addComponent(rightButton);
      setComponentAlignment(rightButton, Alignment.BOTTOM_RIGHT);
  6. For a better view, we enable layout margins on all four sides of the layout and we stretch the layout to fill the screen.
      setMargin(true);
      setSizeFull();
    }
  7. That's all. Now we can use our AligningDemo class in the root class.
    public class Demo extends UI {
      @Override
      public void init(VaadinRequest request) {
        setContent(new AligningDemo()); 
      }
    }

How it works...

We can set the alignment of the component inside a specific layout with the setComponentAlignment() method. The method takes the component contained in the layout to be formatted as its parameters, and also takes the horizontal and vertical alignment. The easiest way to set alignments is to use the constants defined in the Alignment class.

See also

主站蜘蛛池模板: 阿拉善左旗| 资溪县| 新营市| 黔西| 屏南县| 大荔县| 如东县| 卢湾区| 监利县| 祁门县| 新乐市| 龙江县| 深州市| 丁青县| 青龙| 平武县| 沁阳市| 兴国县| 任丘市| 西丰县| 舞阳县| 沅陵县| 庆阳市| 台东市| 包头市| 清河县| 兴海县| 城固县| 北川| 通化市| 兴化市| 原阳县| 寿宁县| 澜沧| 双江| 永宁县| 斗六市| 含山县| 四平市| 江永县| 大厂|