/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
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.

Søg
Reklame
Statistik
Spørgsmål : 177577
Tips : 31968
Nyheder : 719565
Indlæg : 6409071
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste