Janela que não funciona

1 resposta
T

Eu possuo o seguinte código para a criação de uma janela
--------------------------------

import java.awt.*; 
import java.awt.event.*; 

import java.text.*; 

import javax.swing.*; 
import javax.swing.border.*; 
import javax.swing.event.*; 
import javax.swing.text.*; 

public class JanCadastro extends JFrame { 

private JTextField edNome = new JTextField(); 
private JTextField edCargo = new JTextField(); 

private JLabel lblNome = new JLabel("Nome:"); 
private JLabel lblCargo = new JLabel("Cargo:"); 
private JLabel lblDataAdmissao = new JLabel("Data de admissão:"); 
private JLabel lblHorarioTrabalho = new JLabel("Horário de Trabalho:"); 
private JLabel lblEntradaTrabalho = new JLabel("Horário de entrada:"); 
private JLabel lblSaidaTrabalho = new JLabel("Horário de saída:"); 
private JLabel lblHorarioAlmoco = new JLabel("Horário de almoço:"); 
private JLabel lblEntradaAlmoco = new JLabel("Horário de entrada:"); 
private JLabel lblSaidaAlmoco = new JLabel("Horário de saída:"); 
private JLabel lblHorarioDescanco = new JLabel("Descanso:"); 
private JLabel lblEntradaDescanco = new JLabel("Horário de entrada:"); 
private JLabel lblSaidaDescanco = new JLabel("Horário de saída:"); 

private MaskFormatter dataAdmissao = new MaskFormatter(); 
private JFormattedTextField fDataAdmissao = new JFormattedTextField(); 
private MaskFormatter horaTrabalhoEntrada = new MaskFormatter(); 
private JFormattedTextField fHoraTrabalhoEntrada = new JFormattedTextField(); 
private MaskFormatter horaTrabalhoSaida = new MaskFormatter(); 
private JFormattedTextField fHoraTrabalhoSaida = new JFormattedTextField(); 
private MaskFormatter horaAlmocoEntrada = new MaskFormatter(); 
private JFormattedTextField fHoraAlmocoEntrada = new JFormattedTextField(); 
private MaskFormatter horaAlmocoSaida = new MaskFormatter(); 
private JFormattedTextField fHoraAlmocoSaida = new JFormattedTextField(); 
private MaskFormatter horaDescancoEntrada = new MaskFormatter(); 
private JFormattedTextField fHoraDescancoEntrada = new JFormattedTextField(); 
private MaskFormatter horaDescancoSaida = new MaskFormatter(); 
private JFormattedTextField fHoraDescancoSaida = new JFormattedTextField(); 

// Criação do JPanel e do TitleBorder ( group box ) 
//JPanel cargosPanel = new JPanel( new FlowLayout ( FlowLayout.LEFT, 134, 10 )); 
//TitledBorder cargosBorder = new TitledBorder("Já ocupou outros cargos na empresa?"); 

public void JanCadastro() throws Exception { 
try { 
mostra(); 
} catch(Exception e){ 
e.printStackTrace(); 
} 
} 

// posicionamento dos componentes 
public void mostra() { 

this.getContentPane().setLayout(null); 
this.setSize(300, 400); 
//this.setLocation(100,100); 
this.setTitle("ASCOMCER - Cadastro de Funcionários"); 
this.setResizable(false); 
this.setModal(true); 
this.addWindowListener( new WindowAdapter () { 
public void windowClosing( WindowEvent e ) { 
opFechar( e); 
} 
}); 

lblNome.setBounds(new Rectangle(4, 17, 57, 13)); 
this.getContentPane().add(lblNome, null); 
edNome.setBounds(new Rectangle(53, 9, 641, 21)); 
this.getContentPane().add(edNome, null); 

lblCargo.setBounds(new Rectangle(3, 40, 55, 13)); 
this.getContentPane().add(lblCargo, null); 
edCargo.setBounds(new Rectangle(53, 32, 460, 21)); 
this.getContentPane().add(edCargo, null); 

lblDataAdmissao.setBounds(new Rectangle(520, 41, 110, 13)); 
this.getContentPane().add(lblDataAdmissao, null); 
try { 
dataAdmissao = new MaskFormatter("**:**"); 
} catch (ParseException parseEx) { 
JOptionPane.showMessageDialog(null, "Erro de formatação.", "Erro", JOptionPane.ERROR_MESSAGE); 
} 
fDataAdmissao.setColumns(100); 
dataAdmissao.install(fDataAdmissao); 
fDataAdmissao.setBounds(new Rectangle(248, 55, 100, 210)); 
this.getContentPane().add(fDataAdmissao); 

lblHorarioTrabalho.setBounds(new Rectangle(10, 64, 120, 13)); 
this.getContentPane().add(lblHorarioTrabalho, null); 

lblEntradaTrabalho.setBounds(new Rectangle(132, 64, 110, 13)); 
this.getContentPane().add(lblEntradaTrabalho, null); 
try { 
horaTrabalhoEntrada = new MaskFormatter("**:**"); 
} catch (ParseException parseEx) { 
JOptionPane.showMessageDialog(null, "Erro de formatação.", "Erro", JOptionPane.ERROR_MESSAGE); 
} 
fHoraTrabalhoEntrada.setColumns(100); 
horaTrabalhoEntrada.install(fDataAdmissao); 
fHoraTrabalhoEntrada.setBounds(new Rectangle(248, 55, 100, 210)); 
this.getContentPane().add(fHoraTrabalhoEntrada); 

lblSaidaTrabalho.setBounds(new Rectangle(354, 64, 110, 13)); 
this.getContentPane().add(lblSaidaTrabalho, null); 
try { 
horaTrabalhoSaida = new MaskFormatter("**:**"); 
} catch (ParseException parseEx) { 
JOptionPane.showMessageDialog(null, "Erro de formatação.", "Erro", JOptionPane.ERROR_MESSAGE); 
} 
fHoraTrabalhoSaida.setColumns(100); 
horaTrabalhoSaida.install(fDataAdmissao); 
fHoraTrabalhoSaida.setBounds(new Rectangle(248, 55, 100, 210)); 
this.getContentPane().add(fHoraTrabalhoSaida); 

lblHorarioAlmoco.setBounds(new Rectangle(11, 87, 110, 13)); 
this.getContentPane().add(lblHorarioAlmoco, null); 

lblEntradaAlmoco.setBounds(new Rectangle(131, 87, 110, 12)); 
this.getContentPane().add(lblEntradaAlmoco, null); 
try { 
horaAlmocoEntrada = new MaskFormatter("**:**"); 
} catch (ParseException parseEx) { 
JOptionPane.showMessageDialog(null, "Erro de formatação.", "Erro", JOptionPane.ERROR_MESSAGE); 
} 
fHoraAlmocoEntrada.setColumns(100); 
horaAlmocoEntrada.install(fDataAdmissao); 
fHoraAlmocoEntrada.setBounds(new Rectangle(248, 55, 100, 210)); 
this.getContentPane().add(fHoraAlmocoEntrada); 


lblSaidaAlmoco.setBounds(new Rectangle(354, 86, 110, 13)); 
this.getContentPane().add(lblSaidaAlmoco, null); 
try { 
horaAlmocoSaida = new MaskFormatter("**:**"); 
} catch (ParseException parseEx) { 
JOptionPane.showMessageDialog(null, "Erro de formatação.", "Erro", JOptionPane.ERROR_MESSAGE); 
} 
fHoraAlmocoSaida.setColumns(100); 
horaAlmocoSaida.install(fDataAdmissao); 
fHoraAlmocoSaida.setBounds(new Rectangle(248, 55, 100, 210)); 
this.getContentPane().add(fHoraAlmocoSaida); 

lblHorarioDescanco.setBounds(new Rectangle(12, 109, 60, 13)); 
this.getContentPane().add(lblHorarioDescanco, null); 

lblEntradaDescanco.setBounds(new Rectangle(131, 109, 110, 13)); 
this.getContentPane().add(lblEntradaDescanco, null); 
try { 
horaDescancoEntrada = new MaskFormatter("**:**"); 
} catch (ParseException parseEx) { 
JOptionPane.showMessageDialog(null, "Erro de formatação.", "Erro", JOptionPane.ERROR_MESSAGE); 
} 
fHoraDescancoEntrada.setColumns(100); 
horaDescancoEntrada.install(fDataAdmissao); 
fHoraDescancoEntrada.setBounds(new Rectangle(248, 55, 100, 210)); 
this.getContentPane().add(fHoraDescancoEntrada); 

lblSaidaDescanco.setBounds(new Rectangle(354, 109, 110, 13)); 
this.getContentPane().add(lblSaidaDescanco, null); 
try { 
horaDescancoSaida = new MaskFormatter("**:**"); 
} catch (ParseException parseEx) { 
JOptionPane.showMessageDialog(null, "Erro de formatação.", "Erro", JOptionPane.ERROR_MESSAGE); 
} 
fHoraDescancoSaida.setColumns(100); 
horaDescancoSaida.install(fDataAdmissao); 
fHoraDescancoSaida.setBounds(new Rectangle(248, 55, 100, 210)); 
this.getContentPane().add(fHoraDescancoSaida); 

} 

private void opFechar(WindowEvent e) { 
System.exit(0); 
} 

public static void main( String args[] ) { 
JanCadastro janela = new JanCadastro(); 
janela.show(); 
} 

}

Ela compila normalmente, só que quando eu a executo só aparece uma janela minimizada no canto e sem nenhum componente que eu criei.

Alguém pode me ajudar?

[color="red"]editado por Felipe: use bbcode para melhorar a legibilidade do codigo[/color]

1 Resposta

F

essa linha:

public void JanCadastro() throws Exception {

troca pra

public JanCadastro() throws Exception {

SEM o void, pois se vc poe o void eh um metodo, e nao o construtor… dai nao vai ser chamado qndo vc criar uma nova instancia da classe… OU o q vc pode fazer eh chamar o metodo JanCadastro() logo apos criar a janela (antes de mostrala, com o metodo show)…

Criado 21 de setembro de 2004
Ultima resposta 21 de set. de 2004
Respostas 1
Participantes 2