2016-04-24 12 views
1

Mit Formlayout sind alle Ihre Beschriftungen auf der linken Seite des Feldes. Das ist in Ordnung, wenn Sie nur Formulare mit einer Spalte von Feldern haben, aber sobald Sie komplexere Formulare wie Vorname und Nachname in derselben Zeile haben, die Sie nebeneinander platzieren möchten, können Sie FormLayout, um nicht verwenden Zumindest nicht, wenn die Beschriftungen für die Felder konsistent sein sollen, entweder links oder über den Feldern. Ja, Sie können sie in eine und eine InputPrompt in eine FormLayout umhüllen, aber das funktioniert nicht immer für komplexere Formulare, weil Sie manchmal immer noch die Beschriftung benötigen. Mit einem VerticalLayout werden mindestens alle Ihre Untertitel konsistent sein.Warum FormLayout anstelle eines VerticalLayout in Vaadin verwenden?

All das zu sagen, was ist der Vorteil der Verwendung einer FormLayout über eine VerticalLayout? Ich möchte alle Untertitel konsistent, entweder oben oder links, und wenn ich alles außer einer einzigen Spalte von Feldern verwenden, als ich Pech habe. Ich glaube, die Validierung kann auch außerhalb einer FormLayout durchgeführt werden, also bin ich mir nicht sicher, ob dies ein Pro ist, das auf die FormLayout beschränkt ist.

Wenn ich nur eine VerticalLayout verwendet habe, dann bekomme ich alle Beschriftungen über dem Feld, und dies wird für alle Felder konsistent sein, auch wenn ich irgendwelche erweiterten Layouts machen und viele verschiedene Arten von Layouts kombinieren muss, wie Vorname und Nachname auf der gleichen Zeile oder eine Adresse Zeile, wo ich die Stadt und Postleitzahl Felder unterschiedliche Größe sein will, usw.

es muss ein Vorteil für die FormLayout über die VerticalLayout sein, aber ich kann es nicht sehen ..

+0

und was ist, wenn nicht? Was ist, wenn es nur eine Annehmlichkeit für andere Anwendungsfälle ist? – cfrick

+0

Das könnte sehr gut sein, und wenn das der Fall ist, dann ist das die Antwort :) –

Antwort

4

Da ist wirklich nicht viel drin. FormLayout wurde von veraltet jetzt com.vaadin.ui.Form verwendet. Wir können spekulieren, dass die Klasse wahrscheinlich erstellt wurde, um Standardeinstellungen für die com.vaadin.ui.Form bereitzustellen. Auch

Unterschiede sind in JavaDoc angegeben:

  • Beschriftungen auf der linken Seite
  • Validierung sind in zwischen der Beschriftung und der Komponente gezeigt
  • Differenz in Standardabstand und Margen-Einstellungen

Sie können auch den serverseitigen Code beider Klassen betrachten. Es sieht sehr ähnlich aus und daher ist die logische Seite beider Layouts genau gleich.

Quelle: the JavaDoc und meine eigene Erfahrung.

+0

Also wirklich der größte Unterschied, zumindest wenn Sie versuchen, es mit verschiedenen Layouts in einem Formular für komplexere Anwendungsfälle zu kombinieren, ist, dass die Beschriftung ist nach links, was bedeutet, dass die Beschriftung nicht konsistent ist. Ansonsten sind die anderen Unterschiede ziemlich gering (abgesehen davon, dass die Validierung gut ist). –

+0

Ja, Sie haben Recht – kukis

+0

Vielen Dank für die Bestätigung, es wird geschätzt. –