redpois0n
redpois0n

Reputation: 131

Java eclipse WindowBuilder, change look and feel

im coding a program using windowbuilder in eclipse. I would like to have help with changing the design (Look and feel) from metal to windows. How would i do that? thank you

Upvotes: 10

Views: 31152

Answers (5)

omar
omar

Reputation: 1

 try {
            for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) {
                if ("Windows".equals(info.getName())) {
                    javax.swing.UIManager.setLookAndFeel(info.getClassName());
                    break;
                }
            }
        } catch (ClassNotFoundException ex) {
            java.util.logging.Logger.getLogger(BiatApp.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (InstantiationException ex) {
            java.util.logging.Logger.getLogger(BiatApp.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (IllegalAccessException ex) {
            java.util.logging.Logger.getLogger(BiatApp.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        } catch (javax.swing.UnsupportedLookAndFeelException ex) {
            java.util.logging.Logger.getLogger(BiatApp.class.getName()).log(java.util.logging.Level.SEVERE, null, ex);
        }

Upvotes: 0

Michael Christoff
Michael Christoff

Reputation: 339

I had tried setting WIndow Builder to use the system look and feel in preferences, but it still did not work, but simgineer's solution did. I would add to simgineer's post the specific place to add the code, as well as the tags you should use to hide the code from the Window Builder parser. In you main application window...

public static void main(String[] args) {                
    // hide>>$
    try {
        UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    } catch(Exception e) {
        System.out.println("Error setting native LAF: " + e);
    }
    // $hide<<$

    EventQueue.invokeLater(new Runnable() {
        public void run() {
            // generated code ...
        }
    });
}

Cheers

Upvotes: 2

Mohammad Banisaeid
Mohammad Banisaeid

Reputation: 2626

In Eclipse go to

Window > Preferences > WindowBuilder > Swing > LookAndFeel

and tick

Apply choosen LookAndFeel in main() method.

This way whenever you change the look and feel in WindowBuilder's design view, it will be applied in the code.

Upvotes: 18

simgineer
simgineer

Reputation: 1888

the Swing call is:

try {
  UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch(Exception e) {
  System.out.println("Error setting native LAF: " + e);
}

i recall in swt the window trims will change naturally when you cycle through the themes since the widgets are actually native to the os. are you using Swing or SWT?

Upvotes: 5

Eugene Ryzhikov
Eugene Ryzhikov

Reputation: 17359

That has nothing to with WindowBuilder.

Please read Swing tutorial on Swing Look And Feel at http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html

Upvotes: 2

Related Questions