Hie mein Code:
Mein Problem ist, dass der JColorChooser mir ein Farbe zurückgibt(hab ich durch System.out.print getestet
nur ich kann die Farbe nicht dem
lbldatname.setForeground(col);
übergeben.
Kann mir bitte jemand sagen was ich falsch mache?
Danke
Code:
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.awt.Color;
public class FileInfo extends JFrame implements ActionListener, ComponentListener
{
private static final String BEENDEN ="beenden";
public FileInfo()
{
//JPanel für Buttons
JPanel pb = new JPanel();
//JPanel für GridLayout
//JButtons (Öffnen Vordergrund Hintergrund)
JButton dö = new JButton("Datei öffnen");
dö.setActionCommand("datöffnen");
dö.addActionListener(this);
JButton vg = new JButton("Vordergrund");
//ActionListener
vg.setActionCommand("vordergrund");
vg.addActionListener(this);
JButton hg = new JButton("Hintergrund");
hg.setActionCommand("hintergrund");
hg.addActionListener(this);
//JButton Beenden
JButton bee = new JButton("Beenden");
bee.addActionListener(this);
bee.setActionCommand(BEENDEN);
pb.add(dö);
pb.add(vg);
pb.add(hg);
//Schrift setzen
Font font1 = new Font("", Font.BOLD + Font.ITALIC, 11);
Font font2 = new Font("", Font.ITALIC, 11);
//Variablen für Mittelteil
String name = "Hallo";
String verzeichnis;
String groesse;
String änderungdatum;
String lesedatei;
String versteckt;
//Farbvariable
//JLabel für Text Mittelteil
JLabel lbldatname = new JLabel(name);
lbldatname.setFont(font1);
*******************************************************************************
lbldatname.setForeground(col);
*******************************************************************************
JLabel lblverzeichnis = new JLabel();
JLabel lblgroesse = new JLabel();
JLabel lblädat = new JLabel();
JLabel lbllesedat = new JLabel();
JLabel lblversteckt = new JLabel();
//JPanel für GridLayout
JPanel gl = new JPanel();
gl.setLayout(new GridLayout(6,2));
gl.add(new JLabel("Dateiname:"));
gl.add(lbldatname);
gl.add(new JLabel("Verzeichnis:"));
gl.add(new JLabel(":"));
gl.add(new JLabel("Dateigröße:"));
gl.add(new JLabel(":"));
gl.add(new JLabel("Änderungsdatum:"));
gl.add(new JLabel(":"));
gl.add(new JLabel("Nur-Lese-Datei:"));
gl.add(new JLabel(":"));
gl.add(new JLabel("Versteckte Datei:"));
gl.add(new JLabel(":"));
setDefaultCloseOperation(EXIT_ON_CLOSE);
setSize(400,250);
Dimension d = Toolkit.getDefaultToolkit().getScreenSize();
setLocation((int) (d.getWidth()- getSize().width)/2,
(int) (d.getHeight()-getSize().height)/2);
addComponentListener(this);
//Button Panel an Fenster hängen
add(pb, BorderLayout.NORTH);
//Mittelteil an Fenster
add(gl, BorderLayout.CENTER);
//Beenden Button an Fenster
add(bee, BorderLayout.SOUTH);
//Fenster sichtbar machen
setVisible(true);
setVisible(true);
}
public void componentHidden(ComponentEvent e){}
public void componentMoved(ComponentEvent e){}
public void componentShown(ComponentEvent e){}
public void componentResized(ComponentEvent e)
{
int width = getWidth();
int height = getHeight();
if (width<400) width=400;
if (width>800) width =800;
if(height<150) height = 150;
if (height > 400) height = 400;
setSize(width, height);
}
public void actionPerformed(ActionEvent e)
{
if(e.getActionCommand().equals(BEENDEN))
{
System.exit(0);
}
if(e.getActionCommand().equals("vordergrund"))
{
Color newColor = JColorChooser.showDialog(this, "Vordergrundfarbe auswählen",null);
System.out.println(newColor);
Color col = newColor;
}
}
public static void main(String[] args)
{
FileInfo info = new FileInfo();
}
}
Mein Problem ist, dass der JColorChooser mir ein Farbe zurückgibt(hab ich durch System.out.print getestet
nur ich kann die Farbe nicht dem
lbldatname.setForeground(col);
übergeben.
Kann mir bitte jemand sagen was ich falsch mache?
Danke