Here we are breaking up the functionality to initialize our UI components in a more suitable way by implementing smaller methods. Now that we have the required infrastructure, we can start adding input components.
Comboboxes
A combobox is an input component that allows users to select an option from a drop-down list. It looks like the following screenshot:
You must be thinking "yeah right, but how do you put those options in there?" This is easy:
ComboBox c = new ComboBox("Select an option");
c.addItem("Option one");
c.addItem("Option two");
c.addItem("Option three");
If you have the options in a Java Collection class, you can pass the Collection instance to the constructor like this:
ArrayList<String> options = new ArrayList<>();
options.add("Option 1");
options.add("Option 2");
options.add("Option 3");
ComboBox c = new ComboBox("Select an option", options);
The method addItem accepts an Object, so we can pass instances of any class. For example, if we had a User class we could have done this:
User user1 = new User("Jurka", "Rahikkala");
User user2 = new User("Joonas", "Lehtinen");
ComboBox c = new ComboBox("Select a user");
c.addItem(user1);
c.addItem(user2);
Now, how will the ComboBox component know what to print as option captions? First, let's go back to our "Time It" application.