Preciso de ajuda!

5 respostas
ThalitaFS

Oi meu nome é Thalita e estou no 2º semestre de Ciências da computação, e primeiro semestre que estou vendo java. O professor pediu para fazer em uma tela que contenha o nome e que ele aparece também na a tela de baixo quando aperte OK, e no que escolha qual o sexo da pessoa e que mude a cor de fundo, mas não aparece na tela a opção da escolha de cor. :frowning:
Eu não consigo ver qual o meu erro. Espero que me ajude Obrigada.

Aqui está o código:

package trabalho_java;

import java.awt.Color;

import java.awt.FlowLayout;

import java.awt.Font;

import java.awt.event.ActionEvent;

import java.awt.event.ActionListener;

import javax.swing.ButtonGroup;

import javax.swing.JButton;

import javax.swing.JFrame;

import javax.swing.JLabel;

import javax.swing.JList;

import javax.swing.JRadioButton;

import javax.swing.JScrollPane;

import javax.swing.JTextField;

import javax.swing.ListSelectionModel;

import javax.swing.event.ListSelectionEvent;

import javax.swing.event.ListSelectionListener;

public class Java_Trabalho extends JFrame implements ActionListener{

private JButton bt_inserir; //Declarando
private JLabel lb_nome, lb_prova;// Componentes
private JLabel lb_sexo2, lb_sexo;// Componentes
private JTextField ct_nome,ct_nome2;
private JTextField textField; // usado para exibir alterações de fonte
private Font italicFont; // fonte para texto itálico
private Font boldItalicFont; // fonte para texto negrito e itálico
private JRadioButton masculino; // seleciona texto itálico
private JRadioButton feminino; // negrito e itálico
private ButtonGroup radioGroup; // buttongroup para armazenar botões de opção
private JList colorJList; // lista para exibir cores

private final String colorNames[] = { Preto, Azul, Azul Claro,

Cinza Escuro, Cinza, Verde, Cinza Claro, Rosa Escuro,

Laranja, Rosa Claro, Vermelho, Branco, Amarelo };

private final Color colors[] = { Color.BLACK, Color.BLUE, Color.CYAN,

Color.DARK_GRAY, Color.GRAY, Color.GREEN, Color.LIGHT_GRAY,

Color.MAGENTA, Color.ORANGE, Color.PINK, Color.RED, Color.WHITE,

Color.YELLOW };

public Java_Trabalho(){

setTitle("Trabalho Java");
getContentPane().setLayout(null);
//botao
bt_inserir=new JButton ("OK");//estanciando atributo
bt_inserir.setBounds(180, 47, 70, 30);//configurando layout do atributo
this.getContentPane().add(bt_inserir);//adicionando atributo ao frame
bt_inserir.addActionListener(this);//atribuindo a funcao de acao

//label nome
lb_nome =new JLabel("NOME");
lb_nome.setBounds(10, 47, 70, 30);
this.getContentPane().add(lb_nome);

//label nome
lb_prova =new JLabel("PROVA");
lb_prova.setBounds(270, 07, 70, 30); // (coluna, linha, comprimento, largura)
this.getContentPane().add(lb_prova);


//campo texto 1
ct_nome =new JTextField("DIGITE O TEXTO",30);
ct_nome.setBounds(48, 50, 110, 25);
this.getContentPane().add(ct_nome);

//campo texto 2
ct_nome2 =new JTextField(" ",30);
ct_nome2.setBounds(48, 80, 110, 25);
this.getContentPane().add(ct_nome2);
ct_nome2.setEditable(true);

  //label nome
lb_sexo2 =new JLabel("SEXO");
lb_sexo2.setBounds(10, 135, 70, 30); // (coluna, linha, comprimento, largura)
this.getContentPane().add(lb_sexo2);

masculino = new JRadioButton("MASCULINO");
masculino.setBounds(5,170,120,30);
this.getContentPane().add(masculino);

feminino = new JRadioButton("FEMININO");
feminino.setBounds(5,200,120,30);
this.getContentPane().add(feminino);

radioGroup = new ButtonGroup();
radioGroup.add(masculino);
radioGroup.add(feminino);

colorJList = new JList( colorNames ); // cria com colorNames
colorJList = new JList ( colors );
colorJList.setBounds(30,300,50,100);
colorJList.setVisibleRowCount( 5 ); // exibe cinco linhas de uma vez
colorJList.setSelectionMode( ListSelectionModel.SINGLE_SELECTION );
add( new JScrollPane( colorJList ) );
colorJList.addListSelectionListener(
     new ListSelectionListener() // classe interna anônima
     {

        // trata eventos de seleção de lista
 
        public void valueChanged( ListSelectionEvent event )
        {
           getContentPane().setBackground(
              colors[ colorJList.getSelectedIndex() ] );
        } // fim do método valueChanged
     } // fim da classe interna anônima
); // fim da chamada para addListSelectionListener

}

public void actionPerformed(ActionEvent e) {
    if(e.getSource() == bt_inserir){
        ct_nome2.setText(ct_nome.getText());
    }

}

}

5 Respostas

magocebolinha

Coloque o código entre as tags code pra gente poder entender melhor. :slight_smile:

ThalitaFS
package trabalho_java;

import java.awt.Color;
import java.awt.FlowLayout;
import java.awt.Font;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JList;
import javax.swing.JRadioButton;
import javax.swing.JScrollPane;
import javax.swing.JTextField;
import javax.swing.ListSelectionModel;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;


public class Java_Trabalho extends JFrame implements ActionListener{

private JButton bt_inserir; //Declarando
private JLabel lb_nome, lb_prova;// Componentes
private JLabel lb_sexo2, lb_sexo;// Componentes
private JTextField ct_nome,ct_nome2;
private JTextField textField; // usado para exibir alterações de fonte
private Font italicFont; // fonte para texto itálico
private Font boldItalicFont; // fonte para texto negrito e itálico
private JRadioButton masculino; // seleciona texto itálico
private JRadioButton feminino; // negrito e itálico
private ButtonGroup radioGroup; // buttongroup para armazenar botões de opção
private JList colorJList; // lista para exibir cores


private final String colorNames[] = { "Preto", "Azul", "Azul Claro",
  "Cinza Escuro", "Cinza", "Verde", "Cinza Claro", "Rosa Escuro",
  "Laranja", "Rosa Claro", "Vermelho", "Branco", "Amarelo" };
private final Color colors[] = { Color.BLACK, Color.BLUE, Color.CYAN,
  Color.DARK_GRAY, Color.GRAY, Color.GREEN, Color.LIGHT_GRAY,
  Color.MAGENTA, Color.ORANGE, Color.PINK, Color.RED, Color.WHITE,
  Color.YELLOW };

 public Java_Trabalho(){

    setTitle("Trabalho Java");
    getContentPane().setLayout(null);
    //botao
    bt_inserir=new JButton ("OK");//estanciando atributo
    bt_inserir.setBounds(180, 47, 70, 30);//configurando layout do atributo
    this.getContentPane().add(bt_inserir);//adicionando atributo ao frame
    bt_inserir.addActionListener(this);//atribuindo a funcao de acao

    //label nome
    lb_nome =new JLabel("NOME");
    lb_nome.setBounds(10, 47, 70, 30);
    this.getContentPane().add(lb_nome);

    //label nome
    lb_prova =new JLabel("PROVA");
    lb_prova.setBounds(270, 07, 70, 30); // (coluna, linha, comprimento, largura)
    this.getContentPane().add(lb_prova);


    //campo texto 1
    ct_nome =new JTextField("DIGITE O TEXTO",30);
    ct_nome.setBounds(48, 50, 110, 25);
    this.getContentPane().add(ct_nome);

    //campo texto 2
    ct_nome2 =new JTextField(" ",30);
    ct_nome2.setBounds(48, 80, 110, 25);
    this.getContentPane().add(ct_nome2);
    ct_nome2.setEditable(true);

      //label nome
    lb_sexo2 =new JLabel("SEXO");
    lb_sexo2.setBounds(10, 135, 70, 30); // (coluna, linha, comprimento, largura)
    this.getContentPane().add(lb_sexo2);

    masculino = new JRadioButton("MASCULINO");
    masculino.setBounds(5,170,120,30);
    this.getContentPane().add(masculino);

    feminino = new JRadioButton("FEMININO");
    feminino.setBounds(5,200,120,30);
    this.getContentPane().add(feminino);

    radioGroup = new ButtonGroup();
    radioGroup.add(masculino);
    radioGroup.add(feminino);

    colorJList = new JList( colorNames ); // cria com colorNames
    colorJList = new JList ( colors );
    colorJList.setBounds(30,300,50,100);
    colorJList.setVisibleRowCount( 5 ); // exibe cinco linhas de uma vez
    colorJList.setSelectionMode( ListSelectionModel.SINGLE_SELECTION );
    add( new JScrollPane( colorJList ) );
    colorJList.addListSelectionListener(
         new ListSelectionListener() // classe interna anônima
         {

            // trata eventos de seleção de lista
     
            public void valueChanged( ListSelectionEvent event )
            {
               getContentPane().setBackground(
                  colors[ colorJList.getSelectedIndex() ] );
            } // fim do método valueChanged
         } // fim da classe interna anônima
    ); // fim da chamada para addListSelectionListener
 }


    public void actionPerformed(ActionEvent e) {
        if(e.getSource() == bt_inserir){
            ct_nome2.setText(ct_nome.getText());
        }

    }
}
S

Dei uma lida no seu código e percebi que vc não adicionou ao container o componente colorNames.
EX: add.(colorNames);
Uma sugestão, não utilize layout null com setBounds(x,x,x,x);, isso é uma péssima prática de programação, pois se vc redimensionar a tela vai perceber que não vai ficar legal.
Use composição de layout.

ThalitaFS

Oi, eu mudei o null pelo getContentPane().setLayout(new FlowLayout ());
E apareceu a opção de cores só que não apareceu o nome e ficou desconfigurado a tela. =/
Tem alguma outra coisa que eu possa tentar para resolver?
E obrigada pela dica.

S

Agora vc terá que fazer composição de layout e panels.
Uma dica que eu dou é usar o MigLayout, no site www.miglayout.com vc encontrará dicas e exemplos.

Criado 11 de abril de 2010
Ultima resposta 11 de abr. de 2010
Respostas 5
Participantes 3