|
| NetBeans - GUI editor og kompileret, stor ~ Fra : Simon [2610] |
Dato : 10-08-07 09:13 |
|
Hej,
Jeg har i nogen tid undret mig over at når jeg laver en gui i editoren i
netbeans, så har den oftest f.eks. knapper med afrundede kanter, når jeg så
kører mit projekt så er disse bl.a. blevet helt firkantede, samt farverne er
helt anderledes, det er ikke kun knapperne men alt på min gui dette sker
ved. Hvad kan jeg gøre for at designet farve og form mæssigt i editoren
følger det jeg ser når jeg så kører min kode - det ser virkeligt
fundamentalt ændret ud... ?
Jeg har prøvet at google mig frem, men synes ikke jeg kunne finde noget, er
jeg den eneste med dette problem - det er formentligt bare en enkelt setting
et sted jeg enten er kommet til at pille for meget eller for lidt ved :)
På forhånd tak!
mvh.Simon
| |
Conrad (10-08-2007)
| Kommentar Fra : Conrad |
Dato : 10-08-07 12:54 |
|
Simon [2610] skrev:
> Hej,
>
> Jeg har i nogen tid undret mig over at når jeg laver en gui i editoren i
> netbeans, så har den oftest f.eks. knapper med afrundede kanter, når jeg så
> kører mit projekt så er disse bl.a. blevet helt firkantede, samt farverne er
> helt anderledes, det er ikke kun knapperne men alt på min gui dette sker
> ved. Hvad kan jeg gøre for at designet farve og form mæssigt i editoren
> følger det jeg ser når jeg så kører min kode - det ser virkeligt
> fundamentalt ændret ud... ?
Når du laver en GUI i NB editoren anvendes system look-and-feel. Når
programmet så køres anvendes Java look-and-feel. For at bruge system
look-and-feel skal du bruge noget kode ala:
public static void main(String[] args) {
try {
UIManager.setLookAndFeel(
UIManager.getSystemLookAndFeelClassName());
} catch (Exception e1) {
try {
UIManager.setLookAndFeel(
UIManager.getCrossPlatformLookAndFeelClassName());
} catch (Exception e2) {
//do something...
}
}
//do something...
}
Håber at det hjælper.
Conrad
| |
Arne Vajhøj (11-08-2007)
| Kommentar Fra : Arne Vajhøj |
Dato : 11-08-07 02:38 |
|
Conrad wrote:
> Når du laver en GUI i NB editoren anvendes system look-and-feel. Når
> programmet så køres anvendes Java look-and-feel. For at bruge system
> look-and-feel skal du bruge noget kode ala:
> UIManager.setLookAndFeel(
> UIManager.getSystemLookAndFeelClassName());
Hvis man gerne vil se diverse look and feel så kan man lege med
vedhæftede kode.
Arne
======================================
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class MultiLookAndFeel extends JFrame implements ActionListener {
private JButton windows = new JButton("Windows");
private JButton motif = new JButton("Motif");
private JButton metal1 = new JButton("Metal/ocean");
private JButton metal2 = new JButton("Metal/steel");
private JButton gtk = new JButton("GTK");
private JButton java = new JButton("Java");
private JButton system = new JButton("System");
public MultiLookAndFeel() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
getContentPane().setLayout(new GridLayout(7, 1));
windows.addActionListener(this);
getContentPane().add(windows);
motif.addActionListener(this);
getContentPane().add(motif);
metal1.addActionListener(this);
getContentPane().add(metal1);
metal2.addActionListener(this);
getContentPane().add(metal2);
gtk.addActionListener(this);
getContentPane().add(gtk);
java.addActionListener(this);
getContentPane().add(java);
system.addActionListener(this);
getContentPane().add(system);
pack();
}
public void actionPerformed(ActionEvent e) {
try {
if(e.getSource() == windows) {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
} else if(e.getSource() == motif) {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.motif.MotifLookAndFeel");
} else if(e.getSource() == metal1) {
javax.swing.plaf.metal.MetalLookAndFeel.setCurrentTheme(new
javax.swing.plaf.metal.OceanTheme());
UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");
} else if(e.getSource() == metal2) {
javax.swing.plaf.metal.MetalLookAndFeel.setCurrentTheme(new
javax.swing.plaf.metal.DefaultMetalTheme());
UIManager.setLookAndFeel("javax.swing.plaf.metal.MetalLookAndFeel");
} else if(e.getSource() == gtk) {
UIManager.setLookAndFeel("com.sun.java.swing.plaf.gtk.GTKLookAndFeel");
} else if(e.getSource() == java) {
UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
} else if(e.getSource() == system) {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
}
} catch (ClassNotFoundException e1) {
e1.printStackTrace();
} catch (InstantiationException e1) {
e1.printStackTrace();
} catch (IllegalAccessException e1) {
e1.printStackTrace();
} catch (UnsupportedLookAndFeelException e1) {
e1.printStackTrace();
}
SwingUtilities.updateComponentTreeUI(this);
pack();
}
public static void main(String[] args) {
MultiLookAndFeel f = new MultiLookAndFeel();
f.setVisible(true);
}
}
| |
Michael Rasmussen (10-08-2007)
| Kommentar Fra : Michael Rasmussen |
Dato : 10-08-07 13:02 |
|
On Fri, 10 Aug 2007 13:54:04 +0200
Conrad <thomasfconrad_remove_this_@_and_this_gmail.com> wrote:
>
>
> Når du laver en GUI i NB editoren anvendes system look-and-feel. Når
> programmet så køres anvendes Java look-and-feel. For at bruge system
Er ovenstående ikke Java6 relateret?
--
Hilsen/Regards
Michael Rasmussen
http://keyserver.veridis.com:11371/pks/lookup?op=get&search=0xE3E80917
A computer is like air conditioning: it becomes useless when you open
windows.
| |
|
|