Overview
Vaadin provides a comprehensive set of user interface components and allows you to define custom components.
The component hierarchy of Vaadin is presented in the next four diagrams:
-
Basic Components illustrates the inheritance hierarchy of the UI component classes and interfaces not bound directly to business objects.
-
Field Components presents fields bound to single values
-
Selection Components presents components that show a list of data and allow selection
-
Layouts and Component Containers layouts and other component containers
Interfaces are displayed with a dotted outline, abstract classes in gray, and regular classes in blue.
![component class hierarchy](/docs/v8/static/caecd4087125dc0aaf5513933a6d2053/825db/component-class-hierarchy.png)
![field class hierarchy](/docs/v8/static/afb2039e498782dd0817a7a4328ef5f1/ab282/field-class-hierarchy.png)
![selects class hierarchy](/docs/v8/static/818b879cdc7db3e2a9d7779407c5c10f/4543a/selects-class-hierarchy.png)
![component container class hierarchy](/docs/v8/static/857cf887297e1960601bc42664a12c50/1e153/component-container-class-hierarchy.png)
The Component is interface implemented by all components. In practice, all components extend the AbstractComponent abstract class.
There are three more specific types of components.
- Field Components
-
allow user to edit a value in the UI. All extend AbstractField. Field components are described in detail in "Field Components".
- Selection Component
-
show a list of data that the user can select from. All extend AbstractListing. Selection components are described in detail in "Selection Components".
- Layouts and Component Containers
-
Components that can contain other components. All layouts and containers implement the HasComponents interface. Layout components are described in detail in "Managing Layout".
You can browse the built-in UI components of Vaadin library in the Sampler application of the Vaadin Demo. The Sampler shows a description, JavaDoc documentation, and a code samples for each of the components.
In addition to the built-in components, many components are available as add-ons, either from the Vaadin Directory or from independent sources. Both commercial and free components exist. The installation of add-ons is described in "Using Vaadin Add-ons".