There is something that I probably don't understand. I try to create a vertical layout container and add elements to it on button click. But this doesn't work, the elements are not drawn. What is the problem?

Also when I try to add Label element instead of Button, it draws them in one horizontal line instead of putting them vertically.

public class MYTest implements EntryPoint {
    public void onModuleLoad() {
        final LayoutContainer postsContainer = new LayoutContainer();
        VBoxLayout layout = new VBoxLayout();
        layout.setPadding(new Padding(5));
        Button b = new Button("add new element");
        b.addListener(Events.OnClick,new Listener<ButtonEvent>() {
            public void handleEvent(ButtonEvent buttonEvent) {
                postsContainer.add(new Button("New Label"));
        postsContainer.add(new Button("New Label"), new VBoxLayoutData(new Margins(0, 0, 5, 0)));
        postsContainer.add(new Button("New Label2"), new VBoxLayoutData(new Margins(0, 0, 5, 0)));
        Viewport viewport = new Viewport();
        viewport.setLayout(new FitLayout());