setBackground() ! getContentPane().setBackground()

3 respostas
P
Pq quando seto para a janela receber a cor

aa.setBackground(Color.yellow);

o form nao fica com essa cor

mas quando eu seto

aa.getContentPane().setBackground(Color.black);

ai funciona ? queria saber a diferenca

e tbm nao itendi o que faz getContetPane() <img src="https://cdn.jsdelivr.net/gh/twitter/twemoji@14/assets/72x72/s.pngmiley.png?v=9" title=":smiley:" class="emoji" alt=":smiley:">

Muito grato desde já programadorjlle :slight_smile:


import java.awt.Color;
import javax.swing.JFrame;

public class janela extends JFrame{

public janela() {}
	
public static void main(String args[])  {
  	   
   janela aa = new janela();
   aa.setTitle("Primeiro Programa");
   aa.setBounds(150,20,500,520);
   aa.setBackground(Color.yellow);

   aa.getContentPane().setLayout( null );

// aa.getContentPane().setBackground(Color.black);
aa.show();

}

}

3 Respostas

W

amigo tente assim:

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

public class janela extends JFrame{

public janela() {
    
    super("Primeiro Programa");
    Container janela = getContentPane();

    janela.setLayout( null );
    janela.setBackground(Color.yellow);

}

public static void main(String args[]) {

    janela aa = new janela();
    aa.setBounds(150,20,500,520);
    aa.show();

}

}

P

west poderia me esplicar o que faz essa linha ?

Container janela = getContentPane();

Muito grato pela sua ajuda :slight_smile:

W

No awt colocamos as propriedades(layout, background etc.) direto na tela, já no swing utiliza-se um Conteiner que fica dentro da sua Applet, JFrame…(swing).

Como vc está utilizando JFrame(swing), é necessário um Conteiner.

Container janela = getContentPane

Essa linha pega uma referência do Conteiner da tela, para vc colocar as propriedades dentro dele.
:slight_smile:

Criado 18 de janeiro de 2005
Ultima resposta 18 de jan. de 2005
Respostas 3
Participantes 2