views:

106

answers:

5

Is there a better package or external library out there that does a better job than javax.swing at resembling the native Windows look and feel? I want my Java GUIs to resemble the forms I create using C# and the .NET framework. Thanks.

+6  A: 

SWT comes closest because it actually uses the OS'es native widgets. The downside is that you have to perform some memory management, which is not required with Swing.

Other options include QT with Java, more information on that in this topic: http://stackoverflow.com/questions/422956/java-swing-or-java-qt

and wxWidgets with wx4j: http://en.wikipedia.org/wiki/WxWidgets

nkr1pt
It's resource management, not memory management. Explicit disposal of external resources can be useful and need not be onerous.
Andy Thomas-Cramer
A: 

Try SWT which is the GUI widget toolkit of Eclipse. A disadvantage of SWT is that it has some platform dependent libraries for each platform SWT supports: http://www.eclipse.org/swt/

heb
+2  A: 

You might want to look into setting the look and feel; if you use the Windows look and feel, your app will look more like a native app.

See this comparison of the various look and feels.

Richard Fearn
+2  A: 

You can select the system look and feel with swing :

public static void main(String[] args) {
    try {
        // Set System L&F
        UIManager.setLookAndFeel(
            UIManager.getSystemLookAndFeelClassName());
    } 
    catch (UnsupportedLookAndFeelException e) {
       // handle exception
    }
    catch (ClassNotFoundException e) {
       // handle exception
    }
    catch (InstantiationException e) {
       // handle exception
    }
    catch (IllegalAccessException e) {
       // handle exception
    }

    new SwingApplication(); //Create and show the GUI.
}

Resources :

On the same topic :

Colin Hebert
A: 

If you don't mind spending some many JIDE is a great product which offers as well 'windows' look and feel.

zellus