Features of Alignment (JDK 1.2.2)
The constructor of JLabel has an optional align argument, which ought to make the setAlignmentX(0.5F) invocation unnecessary—it didn’t work for me.
If you setAlignmentX(0.0F) (the default), Box treats this as right alignment. If you setAlignmentX(1.0F), Box treats it as left alignment. This is the opposite of what you might have guessed (and what the documentation suggests).
Finally, note the API documentation says setAlignmentX() sets vertical alignment. Actually (more logically) it sets horizontal alignment.