La ventana no cambia de color

i92grarr
04 de Diciembre del 2004
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

public class principal extends JComponent {
JLabel jLabel1 = new JLabel();
JButton jButton1 = new JButton();
JButton jButton2 = new JButton();
JButton jButton3 = new JButton();
JButton jButton4 = new JButton();
JButton jButton5 = new JButton();

public static void main(String[] args) {
JFrame frame = new JFrame("Buscador en java");
frame.setBackground(Color.BLUE);
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {System.exit(0);}
});

frame.getContentPane().add(new principal());
frame.pack();
frame.setSize(800,600);
frame.setResizable(false);
frame.setVisible(true);



}

public principal() {
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
setBackground(Color.BLUE);
}
private void jbInit() throws Exception {

jLabel1.setFont(new java.awt.Font("Dialog", 1, 18));
jLabel1.setText("BUSCADOR R.A.J.O.A.");

jLabel1.setBounds(new Rectangle(69, 12, 256, 59));

this.setBackground(UIManager.getColor("inactiveCaptionText"));

jButton1.setBounds(new Rectangle(9, 98, 120, 20));

jButton1.setText("Buscar archivo");
jButton1.addActionListener(new principal_jButton1_actionAdapter(this));
jButton1.addActionListener(new principal_jButton1_actionAdapter(this));
jButton1.addActionListener(new principal_jButton1_actionAdapter(this));

jButton2.setBounds(new Rectangle(9, 150, 117, 21));

jButton2.setText("Añadir archivo");
jButton2.addActionListener(new principal_jButton2_actionAdapter(this));

jButton3.setBounds(new Rectangle(9, 201, 120, 26));

jButton3.setText("Ayuda");

jButton4.setBounds(new Rectangle(14, 257, 115, 22));

jButton4.setText("A cerca de ...");
jButton4.addActionListener(new principal_jButton4_actionAdapter(this));

jButton5.setBounds(new Rectangle(23, 314, 109, 28));
jButton5.setText("Salir ");
jButton5.addActionListener(new principal_jButton5_actionAdapter(this));
this.add(jButton1, null);
this.add(jButton2, null);
this.add(jButton3, null);
this.add(jButton4, null);
this.add(jLabel1, null);
this.add(jButton5, null);

}

void jButton1_actionPerformed(ActionEvent e) {
JFrame frame2 = new JFrame(" BUSCAR");
frame2.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {System.runFinalization();}
});

frame2.getContentPane().add(new mibusca.buscar());
frame2.pack();
frame2.setSize(800,600);
frame2.setResizable(false);
frame2.setVisible(true);


}

void jButton2_actionPerformed(ActionEvent e) {
JFrame frame3 = new JFrame(" AÑADIR");
frame3.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {System.runFinalization();}
});

frame3.getContentPane().add(new mibusca.anadir());
frame3.pack();
frame3.setSize(800,600);
frame3.setResizable(false);
frame3.setVisible(true);

}

void jButton4_actionPerformed(ActionEvent e) {
JFrame frame2 = new JFrame(" ACERCA DE ....");
frame2.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {System.runFinalization();}
});


frame2.getContentPane().add(new mibusca.acercade());
frame2.pack();
frame2.setSize(800,600);
frame2.setResizable(false);
frame2.setVisible(true);



}

void jButton5_actionPerformed(ActionEvent e) {
System.exit(0);
}


}

class principal_jButton1_actionAdapter implements java.awt.event.ActionListener {
principal adaptee;

principal_jButton1_actionAdapter(principal adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton1_actionPerformed(e);
}
}

class principal_jButton2_actionAdapter implements java.awt.event.ActionListener {
principal adaptee;

principal_jButton2_actionAdapter(principal adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton2_actionPerformed(e);
}
}

class principal_jButton4_actionAdapter implements java.awt.event.ActionListener {
principal adaptee;

principal_jButton4_actionAdapter(principal adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton4_actionPerformed(e);
}
}

class principal_jButton5_actionAdapter implements java.awt.event.ActionListener {
principal adaptee;

principal_jButton5_actionAdapter(principal adaptee) {
this.adaptee = adaptee;
}
public void actionPerformed(ActionEvent e) {
adaptee.jButton5_actionPerformed(e);
}
}



Este es el codigo de mi ventana principal, pero el problema es que no coje el color azul en este caso ni ningun otro, y me gustarias saber como puedo ponerle un color de fondo.

Rigel
04 de Diciembre del 2004
HOLA:

Bueno te recomiendo que en vez de heredar de la clase JComponent heredes de la clase Panel,, de esta manera creas tu panel principal.

this.setLayout(new Layout a Usar());

y le agregues el color:

this.setBackground(new Color(160, 160 , 220));

Ahora si agregas otro Jpanel dentro de tu panel principal

JPanel panel = new JPanel();

add(panel);

entonces tienes que ver en que posición queda para cambiar el color a ese panel y que no te cubra el área de fondo.

panel.setBackground(new Color(160, 160 , 220));

Espero te sirva.

Saludos y Suerte

Rigel
04 de Diciembre del 2004
Perdón en vez de heredar de JComponent hereda de la clase JPanel,,,,,ok? (no Panel)