Como usar o substance look and feel?

Como usar o substance look and feel?

Baixei o arquivo .jar do substance look and feel, mas não sei setá-lo para usar em minha aplicação, alguém poderia me dar uma luzinha…

Seta via UIManager no seu método main.

dicas aqui:
http://rfiume.blogspot.com/2007/02/substance-look-and-feel.html

É que eu já tentei setar assim, mas tá dando erro… Vê como fiz:

import javax.swing.*;
import java.awt.*;

public class Rcalc extends JFrame{
	Container c;
	private String[] moedas = {"Dolar Americano (USD)", "Euro", "Real", "Kwanza"};
	
	public Rcalc(){

		setTitle("R-Calc");
    	c = new Container();
		c = getContentPane();	
		c.setLayout(new GridBagLayout());	

		JPanel calc = new JPanel();
		calc.setLayout(new GridBagLayout());
		JPanel convert = new JPanel();
		convert.setLayout(new GridBagLayout());

		JButton mmais = new JButton(" M+ ");
		JButton mr = new JButton(" MR ");
		JButton del = new JButton("  «  ");
		JButton clear = new JButton(" C ");
		
		JTextField calculo = new JTextField(15);
		calculo.setPreferredSize(new Dimension(20,50));

		JComboBox comboDesde = new JComboBox(moedas);
		JComboBox comboPara = new JComboBox(moedas);
		
		JLabel result = new JLabel();

		calc.add(calculo, new GridBagConstraints(0,0,8,1,0,0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(5,5,0,0),0,0));
		calc.add(mmais, new GridBagConstraints(0,1,1,2,0,0, GridBagConstraints.EAST, GridBagConstraints.HORIZONTAL, new Insets(5,5,0,0),0,0));
		calc.add(mr, new GridBagConstraints(1,1,2,2,0,0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(5,5,0,0),0,0));
		
		calc.add(del, new GridBagConstraints(2,1,3,2,0,0, GridBagConstraints.EAST, GridBagConstraints.HORIZONTAL, new Insets(5,47,0,0),0,0));
		calc.add(clear, new GridBagConstraints(3,1,5,2,0,0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(5,45,0,0),0,0));

		c.add(calc, new GridBagConstraints(0,0,1,1,0,0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(0,0,0,0),0,0));
		//c.add(convert, new GridBagConstraints(1,0,2,1,0,0, GridBagConstraints.EAST, GridBagConstraints.HORIZONTAL, new Insets(0,0,0,0),0,0));

		setSize(400, 280);
    	setLocationRelativeTo(null);
    	//setResizable(false);
    	setVisible(true);

		
		
	}
	public static void main(String[] args){

	/*try {
      UIManager.setLookAndFeel("com.sun.java.swing.plaf.gtk.GTKLookAndFeel");
	
    } 
    catch (Exception e) {
      e.printStackTrace();
    }	*/

		try {
		// Define o look and feel.
			UIManager.setLookAndFeel(new SubstanceBusinessLookAndFeel());
		// Escurece o tema.
			SubstanceLookAndFeel.setCurrentTheme(new SubstanceCremeTheme().shade(0.1));
		// Define o watermark.
			SubstanceLookAndFeel.setCurrentWatermark(new SubstanceMetalWallWatermark()); 
		// Ajusta a forma dos botões.
			SubstanceLookAndFeel.setCurrentButtonShaper(new ClassicButtonShaper());
		// Gradient painters for buttons.
			SubstanceLookAndFeel.setCurrentGradientPainter(new WaveGradientPainter()); 
		// Faz com que o watermark vaze (bleed) por componentes opacos, como JTextField's.
		// Note a área de texto da figura abaixo.
			UIManager.put(SubstanceLookAndFeel.WATERMARK_TO_BLEED, Boolean.TRUE);
		// Ajusta localização e quantidade de botões da bara de rolagem (scrolbar)
		// Perceba na figura abaixo que a scrolbar possui três botões.
			UIManager.put(SubstanceLookAndFeel.SCROLL_PANE_BUTTONS_POLICY,
			SubstanceConstants.ScrollPaneButtonPolicyKind.MULTIPLE);
	} 
	catch (UnsupportedLookAndFeelException ex) {
			ex.printStackTrace();
	}	

		Rcalc calculadora = new Rcalc();
		calculadora.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
	}
}

Se me desse um exemplo prático de como setá-lo agradecia, pois já investiguei em bastantes links, mas não consegui…

rasinc,
primeiro vá em:
https://substance.dev.java.net/
clique em “GET”:
Baixe o Substance 6.1 library (de 1.76MB) e o Trident animation library e ponha no seu classpath da aplicação, não esquecendo de importá-los.no seu exemplo, é algo + ou - assim:

[code]
import javax.swing.;
import java.awt.
;
import org.pushingpixels.trident.ease.;
import org.pushingpixels.substance.api.
;
import org.pushingpixels.substance.api.skin.*;

public class Rcalc extends JFrame{
Container c;
private String[] moedas = {“Dolar Americano (USD)”, “Euro”, “Real”, “Kwanza”};

public Rcalc(){

	setTitle("R-Calc");
	c = new Container();
	c = getContentPane();
	c.setLayout(new GridBagLayout());

	JPanel calc = new JPanel();
	calc.setLayout(new GridBagLayout());
	JPanel convert = new JPanel();
	convert.setLayout(new GridBagLayout());

	JButton mmais = new JButton(" M+ ");
	JButton mr = new JButton(" MR ");
	JButton del = new JButton("  «  ");
	JButton clear = new JButton(" C ");

	JTextField calculo = new JTextField(15);
	calculo.setPreferredSize(new Dimension(20,50));

	JComboBox comboDesde = new JComboBox(moedas);
	JComboBox comboPara = new JComboBox(moedas);

	JLabel result = new JLabel();

	calc.add(calculo, new GridBagConstraints(0,0,8,1,0,0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(5,5,0,0),0,0));
	calc.add(mmais, new GridBagConstraints(0,1,1,2,0,0, GridBagConstraints.EAST, GridBagConstraints.HORIZONTAL, new Insets(5,5,0,0),0,0));
	calc.add(mr, new GridBagConstraints(1,1,2,2,0,0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(5,5,0,0),0,0));

	calc.add(del, new GridBagConstraints(2,1,3,2,0,0, GridBagConstraints.EAST, GridBagConstraints.HORIZONTAL, new Insets(5,47,0,0),0,0));
	calc.add(clear, new GridBagConstraints(3,1,5,2,0,0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(5,45,0,0),0,0));
	c.add(calc, new GridBagConstraints(0,0,1,1,0,0, GridBagConstraints.WEST, GridBagConstraints.HORIZONTAL, new Insets(0,0,0,0),0,0));


	setSize(400, 280);
	setLocationRelativeTo(null);
	setVisible(true);
}
public static void main(String[] args){
 SwingUtilities.invokeLater(new Runnable() {
  public void run() {
	try {
	// Define o look and feel.
		UIManager.setLookAndFeel(new SubstanceBusinessLookAndFeel());
		SubstanceLookAndFeel.setSkin(new OfficeBlue2007Skin());
}
catch (UnsupportedLookAndFeelException ex) {
		ex.printStackTrace();
}
    	Rcalc calculadora = new Rcalc();
	calculadora.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
});
}//fim do método main

}[/code]

Leia melhor a página do próprio projeto que lá diz como setar as skins e temas. :wink:

Pois é, valeu pela força, ainda assim dá um monte de erros, mas consegui setar o JTatto Look And Feel que também gostei bastante… Valeu pela força… Dou o tópico como resolvido.