Chapter 15. Work on Your Swing: Using Swing
Swing is easy. Unless you actually care where things end up on the screen. Swing code looks easy, but then you compile it, run it, look at it, and think, “hey, that’s not supposed to go there.” The thing that makes it easy to code is the thing that makes it hard to control—the Layout Manager. Layout Manager objects control the size and location of the widgets in a Java GUI. They do a ton of work on your behalf, but you won’t always like the results. You want two buttons to be the same size, but they aren’t. You want the text field to be three inches long, but it’s nine. Or one. And under the label instead of next to it. But with a little work, you can get layout managers to submit to your will. Learning a little Swing will give you a head start for most GUI programming you’ll ever do. Wanna write an Android app? Working through this chapter will give you a head start.
Swing components
Component is the more correct term for what we’ve been calling a widget. The things you put in a GUI. The things a user sees and interacts with. Text fields, buttons, scrollable lists, radio buttons, etc., are all components. In fact, they all extend javax.swing.JComponent.
Components can be nested
In Swing, virtually all components are capable of holding other components. In other words, you can stick just about anything into anything else. But most ...