All Java Swing components are alike, not native widgets .
The Swing configuration is the result of choosing not to use the native GUI tools for Windows to display itself. Swing “paints” its control tools programmatically using the Java 2D API, rather than invoking the user interface toolkit.
There is an OSX look provided by Apple's JVM, but it is never full-scale control. Another approach is SWT , but I honestly have not seen many applications besides Eclipse use it, and I never found that they look very good.
Russell Leggett
source share