Fórum PROTOCOLO - LTR065800 #485849
17/07/2014
0
package br.edu.jdbc.gui;
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JTabbedPane;
import javax.swing.border.TitledBorder;
import javax.swing.UIManager;
import javax.swing.JLabel;
import java.awt.FlowLayout;
import java.awt.Font;
import javax.swing.LayoutStyle.ComponentPlacement;
import javax.swing.SwingConstants;
import java.awt.Component;
import javax.swing.JTextField;
import javax.swing.JRadioButton;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import br.edu.jdbc.bo.UsuarioBO;
import br.edu.jdbc.dto.UsuarioDTO;
import br.edu.jdbc.exception.BusinessException;
import br.edu.jdbc.util.MensagensUtil;
import java.awt.Color;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import javax.swing.JTable;
import javax.swing.border.SoftBevelBorder;
import javax.swing.border.BevelBorder;
import javax.swing.border.LineBorder;
import javax.swing.border.EtchedBorder;
import javax.swing.table.DefaultTableModel;
import javax.swing.JScrollBar;
import java.awt.ScrollPane;
import javax.swing.JScrollPane;
import javax.swing.ScrollPaneConstants;
public class MainFrame extends JFrame {
private JPanel contentPane;
private JTextField txtCodigo;
private JTextField txtNome;
private JTextField txtDataCadastro;
private final ButtonGroup buttonGroup = new ButtonGroup();
private DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
private JTable tableLista;
private JTextField txtCodigoConsulta;
private JTextField txtNomeConsulta;
private JTable tableConsulta;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
MainFrame frame = new MainFrame();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
private JTable getTableLista() {
return tableLista;
}
/**
* Create the frame.
*/
public MainFrame() {
setTitle("Principal");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 629, 451);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
JTabbedPane mainTabbedPane = new JTabbedPane(JTabbedPane.TOP);
GroupLayout gl_contentPane = new GroupLayout(contentPane);
gl_contentPane.setHorizontalGroup(
gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addContainerGap()
.addComponent(mainTabbedPane, GroupLayout.DEFAULT_SIZE, 583, Short.MAX_VALUE)
.addContainerGap())
);
gl_contentPane.setVerticalGroup(
gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addContainerGap()
.addComponent(mainTabbedPane, GroupLayout.PREFERRED_SIZE, 348, GroupLayout.PREFERRED_SIZE)
.addContainerGap(44, Short.MAX_VALUE))
);
JPanel panelCadastro = new JPanel();
panelCadastro.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"), "Pessoa", TitledBorder.LEADING, TitledBorder.TOP, null, null));
mainTabbedPane.addTab("Cadastro", null, panelCadastro, null);
JLabel lblCodigo = new JLabel("C\u00F3digo:");
lblCodigo.setFont(new Font("Tahoma", Font.PLAIN, 18));
JLabel lblDataCadastro = new JLabel("Dt. Cadastro:");
lblDataCadastro.setFont(new Font("Tahoma", Font.PLAIN, 18));
JLabel label = new JLabel("Nome:");
label.setFont(new Font("Tahoma", Font.PLAIN, 18));
JLabel lblSexo = new JLabel("Sexo:");
lblSexo.setFont(new Font("Tahoma", Font.PLAIN, 18));
txtCodigo = new JTextField();
txtCodigo.setColumns(10);
txtNome = new JTextField();
txtNome.setColumns(10);
txtDataCadastro = new JTextField();
txtDataCadastro.setColumns(10);
final JRadioButton rbtMasculino = new JRadioButton("Masculino");
rbtMasculino.setSelected(true);
buttonGroup.add(rbtMasculino);
JRadioButton rbtFeminino = new JRadioButton("Feminino");
buttonGroup.add(rbtFeminino);
JButton btnCadastrar = new JButton("Cadastrar");
btnCadastrar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
UsuarioDTO usuarioDTO = new UsuarioDTO();
UsuarioBO usuarioBO = new UsuarioBO();
try{
String idUsuario = txtCodigo.getText();
String nome = txtNome.getText();
String dataCadastro = txtDataCadastro.getText();
char sexo = 'M';
// Valida os Campos na Camada de Business
usuarioBO.validaIdUsuarioNulo(idUsuario);
usuarioBO.validaIdUsuarioFormato(idUsuario);
usuarioBO.validaNomeNulo(nome);
usuarioBO.validaNomeCaracteres(nome);
usuarioBO.validaDataCadastroNulo(dataCadastro);
usuarioBO.validaDataCadastroFormato(dataCadastro);
// Carrega os Campos
usuarioDTO.setIdUsuario(Integer.parseInt(idUsuario));
usuarioDTO.setNomeUsuario(nome);
sexo = rbtMasculino.isSelected() ? 'M':'F';
usuarioDTO.setSexo(Character.toString(sexo));
usuarioDTO.setDataCadastro(dateFormat.parse(dataCadastro));
usuarioBO.cadastrar(usuarioDTO);
MensagensUtil.addMsg(MainFrame.this, "Cadastro Efetuado com Sucesso");
MainFrame.this.dispose();
main(null);
} catch (Exception e1) {
e1.printStackTrace();
MensagensUtil.addMsg(MainFrame.this, e1.getMessage());
}
}
});
btnCadastrar.setForeground(Color.BLUE);
btnCadastrar.setFont(new Font("Tahoma", Font.PLAIN, 22));
JButton btnLimpar = new JButton("Limpar");
btnLimpar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
txtCodigo.setText("");
txtNome.setText("");
txtDataCadastro.setText("");
rbtMasculino.setSelected(true);
}
});
btnLimpar.setForeground(Color.BLUE);
btnLimpar.setFont(new Font("Tahoma", Font.PLAIN, 22));
GroupLayout gl_panelCadastro = new GroupLayout(panelCadastro);
gl_panelCadastro.setHorizontalGroup(
gl_panelCadastro.createParallelGroup(Alignment.TRAILING)
.addGroup(gl_panelCadastro.createSequentialGroup()
.addContainerGap()
.addGroup(gl_panelCadastro.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panelCadastro.createSequentialGroup()
.addComponent(lblCodigo)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(txtCodigo, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGroup(gl_panelCadastro.createSequentialGroup()
.addComponent(lblDataCadastro)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(txtDataCadastro, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGroup(gl_panelCadastro.createSequentialGroup()
.addComponent(lblSexo, GroupLayout.PREFERRED_SIZE, 104, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(rbtMasculino)
.addGap(18)
.addComponent(rbtFeminino, GroupLayout.PREFERRED_SIZE, 83, GroupLayout.PREFERRED_SIZE))
.addGroup(gl_panelCadastro.createSequentialGroup()
.addComponent(label, GroupLayout.PREFERRED_SIZE, 61, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(txtNome, GroupLayout.PREFERRED_SIZE, 411, GroupLayout.PREFERRED_SIZE)))
.addContainerGap(31, Short.MAX_VALUE))
.addGroup(gl_panelCadastro.createSequentialGroup()
.addContainerGap(282, Short.MAX_VALUE)
.addComponent(btnCadastrar)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(btnLimpar, GroupLayout.PREFERRED_SIZE, 127, GroupLayout.PREFERRED_SIZE)
.addGap(20))
);
gl_panelCadastro.setVerticalGroup(
gl_panelCadastro.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panelCadastro.createSequentialGroup()
.addGap(50)
.addGroup(gl_panelCadastro.createParallelGroup(Alignment.BASELINE)
.addComponent(lblCodigo)
.addComponent(txtCodigo, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(18)
.addGroup(gl_panelCadastro.createParallelGroup(Alignment.BASELINE)
.addComponent(label, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE)
.addComponent(txtNome, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGroup(gl_panelCadastro.createParallelGroup(Alignment.TRAILING)
.addGroup(gl_panelCadastro.createSequentialGroup()
.addGap(18)
.addGroup(gl_panelCadastro.createParallelGroup(Alignment.BASELINE)
.addComponent(lblDataCadastro, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE)
.addComponent(txtDataCadastro, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(18)
.addGroup(gl_panelCadastro.createParallelGroup(Alignment.BASELINE)
.addComponent(lblSexo, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE)
.addComponent(rbtMasculino)
.addComponent(rbtFeminino))
.addContainerGap(95, Short.MAX_VALUE))
.addGroup(gl_panelCadastro.createSequentialGroup()
.addPreferredGap(ComponentPlacement.RELATED)
.addGroup(gl_panelCadastro.createParallelGroup(Alignment.BASELINE)
.addComponent(btnCadastrar)
.addComponent(btnLimpar, GroupLayout.PREFERRED_SIZE, 35, GroupLayout.PREFERRED_SIZE))
.addGap(29))))
);
gl_panelCadastro.linkSize(SwingConstants.HORIZONTAL, new Component[] {lblCodigo, lblDataCadastro, label});
panelCadastro.setLayout(gl_panelCadastro);
JPanel panelLista = new JPanel();
panelLista.setBorder(new TitledBorder(null, "", TitledBorder.LEADING, TitledBorder.TOP, null, null));
mainTabbedPane.addTab("Lista", null, panelLista, null);
JScrollPane scrollListagem = new JScrollPane();
scrollListagem.setViewportBorder(new EtchedBorder(EtchedBorder.LOWERED, null, null));
GroupLayout gl_panelLista = new GroupLayout(panelLista);
gl_panelLista.setHorizontalGroup(
gl_panelLista.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panelLista.createSequentialGroup()
.addGap(36)
.addComponent(scrollListagem, GroupLayout.PREFERRED_SIZE, 500, GroupLayout.PREFERRED_SIZE)
.addContainerGap(38, Short.MAX_VALUE))
);
gl_panelLista.setVerticalGroup(
gl_panelLista.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panelLista.createSequentialGroup()
.addGap(35)
.addComponent(scrollListagem, GroupLayout.DEFAULT_SIZE, 269, Short.MAX_VALUE)
.addContainerGap())
);
tableLista = new JTable();
scrollListagem.setViewportView(tableLista);
UsuarioBO usuarioBO = new UsuarioBO();
try {
String [][] listaUsuarios = usuarioBO.listar();
tableLista.setModel(new DefaultTableModel(listaUsuarios,
new String[] {
"Nome", "Sexo", "Data de Cadastro"
}
));
} catch (Exception e) {
e.printStackTrace();
MensagensUtil.addMsg(MainFrame.this, e.getMessage());
}
tableLista.setBorder(null);
panelLista.setLayout(gl_panelLista);
JPanel panelConsulta = new JPanel();
mainTabbedPane.addTab("Consulta", null, panelConsulta, null);
JLabel lblCodigoConsulta = new JLabel("C\u00F3digo:");
lblCodigoConsulta.setFont(new Font("Tahoma", Font.PLAIN, 18));
txtCodigoConsulta = new JTextField();
txtCodigoConsulta.setColumns(10);
JLabel lblNomeConsulta = new JLabel("Nome:");
lblNomeConsulta.setFont(new Font("Tahoma", Font.PLAIN, 18));
txtNomeConsulta = new JTextField();
txtNomeConsulta.setColumns(10);
JLabel lblSexoConsulta = new JLabel("Sexo:");
lblSexoConsulta.setFont(new Font("Tahoma", Font.PLAIN, 18));
JRadioButton rbtMasculinoConsulta = new JRadioButton("Masculino");
buttonGroup.add(rbtMasculinoConsulta);
rbtMasculinoConsulta.setSelected(true);
JRadioButton rbtFemininoConsulta = new JRadioButton("Feminino");
buttonGroup.add(rbtFemininoConsulta);
JButton btnConsultar = new JButton("Consultar");
btnConsultar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
}
});
btnConsultar.setForeground(Color.BLUE);
btnConsultar.setFont(new Font("Tahoma", Font.PLAIN, 22));
JPanel panelListaConsulta = new JPanel();
panelListaConsulta.setBorder(new TitledBorder(null, "Usu\u00E1rios", TitledBorder.LEADING, TitledBorder.TOP, null, null));
GroupLayout gl_panelConsulta = new GroupLayout(panelConsulta);
gl_panelConsulta.setHorizontalGroup(
gl_panelConsulta.createParallelGroup(Alignment.TRAILING)
.addGroup(gl_panelConsulta.createSequentialGroup()
.addContainerGap()
.addGroup(gl_panelConsulta.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panelConsulta.createSequentialGroup()
.addGroup(gl_panelConsulta.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panelConsulta.createSequentialGroup()
.addComponent(lblCodigoConsulta, GroupLayout.PREFERRED_SIZE, 74, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.RELATED)
.addComponent(txtCodigoConsulta, GroupLayout.PREFERRED_SIZE, 47, GroupLayout.PREFERRED_SIZE)
.addGap(18)
.addComponent(lblNomeConsulta, GroupLayout.PREFERRED_SIZE, 62, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.RELATED)
.addComponent(txtNomeConsulta, GroupLayout.PREFERRED_SIZE, 302, GroupLayout.PREFERRED_SIZE))
.addGroup(gl_panelConsulta.createSequentialGroup()
.addComponent(lblSexoConsulta, GroupLayout.PREFERRED_SIZE, 58, GroupLayout.PREFERRED_SIZE)
.addGap(18)
.addComponent(rbtMasculinoConsulta, GroupLayout.PREFERRED_SIZE, 71, GroupLayout.PREFERRED_SIZE)
.addGap(18)
.addComponent(rbtFemininoConsulta, GroupLayout.PREFERRED_SIZE, 83, GroupLayout.PREFERRED_SIZE)))
.addContainerGap(57, Short.MAX_VALUE))
.addGroup(gl_panelConsulta.createSequentialGroup()
.addGroup(gl_panelConsulta.createParallelGroup(Alignment.TRAILING)
.addComponent(panelListaConsulta, GroupLayout.DEFAULT_SIZE, 544, Short.MAX_VALUE)
.addComponent(btnConsultar, GroupLayout.PREFERRED_SIZE, 127, GroupLayout.PREFERRED_SIZE))
.addGap(24))))
);
gl_panelConsulta.setVerticalGroup(
gl_panelConsulta.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panelConsulta.createSequentialGroup()
.addGap(29)
.addGroup(gl_panelConsulta.createParallelGroup(Alignment.TRAILING)
.addGroup(gl_panelConsulta.createParallelGroup(Alignment.BASELINE)
.addComponent(lblNomeConsulta, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE)
.addComponent(txtNomeConsulta, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGroup(gl_panelConsulta.createParallelGroup(Alignment.LEADING)
.addComponent(lblCodigoConsulta, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE)
.addGroup(gl_panelConsulta.createSequentialGroup()
.addGap(2)
.addComponent(txtCodigoConsulta, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))))
.addGap(18)
.addGroup(gl_panelConsulta.createParallelGroup(Alignment.LEADING)
.addComponent(lblSexoConsulta, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE)
.addComponent(rbtMasculinoConsulta)
.addComponent(rbtFemininoConsulta))
.addGap(18)
.addComponent(panelListaConsulta, GroupLayout.DEFAULT_SIZE, 144, Short.MAX_VALUE)
.addGap(18)
.addComponent(btnConsultar, GroupLayout.PREFERRED_SIZE, 35, GroupLayout.PREFERRED_SIZE)
.addGap(15))
);
JScrollPane scrollPaneConsulta = new JScrollPane();
GroupLayout gl_panelListaConsulta = new GroupLayout(panelListaConsulta);
gl_panelListaConsulta.setHorizontalGroup(
gl_panelListaConsulta.createParallelGroup(Alignment.LEADING)
.addComponent(scrollPaneConsulta, Alignment.TRAILING, GroupLayout.DEFAULT_SIZE, 532, Short.MAX_VALUE)
);
gl_panelListaConsulta.setVerticalGroup(
gl_panelListaConsulta.createParallelGroup(Alignment.LEADING)
.addComponent(scrollPaneConsulta, GroupLayout.DEFAULT_SIZE, 121, Short.MAX_VALUE)
);
tableConsulta = new JTable();
tableConsulta.setModel(new DefaultTableModel(
new Object[][] {
{null, null},
{null, null},
},
new String[] {
"Código", "Nome", "Sexo", "Data de Cadastro"
}
));
scrollPaneConsulta.setColumnHeaderView(tableConsulta);
panelListaConsulta.setLayout(gl_panelListaConsulta);
panelConsulta.setLayout(gl_panelConsulta);
contentPane.setLayout(gl_contentPane);
}
}
import java.awt.BorderLayout;
import java.awt.EventQueue;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.GroupLayout;
import javax.swing.GroupLayout.Alignment;
import javax.swing.JTabbedPane;
import javax.swing.border.TitledBorder;
import javax.swing.UIManager;
import javax.swing.JLabel;
import java.awt.FlowLayout;
import java.awt.Font;
import javax.swing.LayoutStyle.ComponentPlacement;
import javax.swing.SwingConstants;
import java.awt.Component;
import javax.swing.JTextField;
import javax.swing.JRadioButton;
import javax.swing.ButtonGroup;
import javax.swing.JButton;
import br.edu.jdbc.bo.UsuarioBO;
import br.edu.jdbc.dto.UsuarioDTO;
import br.edu.jdbc.exception.BusinessException;
import br.edu.jdbc.util.MensagensUtil;
import java.awt.Color;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import javax.swing.JTable;
import javax.swing.border.SoftBevelBorder;
import javax.swing.border.BevelBorder;
import javax.swing.border.LineBorder;
import javax.swing.border.EtchedBorder;
import javax.swing.table.DefaultTableModel;
import javax.swing.JScrollBar;
import java.awt.ScrollPane;
import javax.swing.JScrollPane;
import javax.swing.ScrollPaneConstants;
public class MainFrame extends JFrame {
private JPanel contentPane;
private JTextField txtCodigo;
private JTextField txtNome;
private JTextField txtDataCadastro;
private final ButtonGroup buttonGroup = new ButtonGroup();
private DateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
private JTable tableLista;
private JTextField txtCodigoConsulta;
private JTextField txtNomeConsulta;
private JTable tableConsulta;
/**
* Launch the application.
*/
public static void main(String[] args) {
EventQueue.invokeLater(new Runnable() {
public void run() {
try {
MainFrame frame = new MainFrame();
frame.setVisible(true);
} catch (Exception e) {
e.printStackTrace();
}
}
});
}
private JTable getTableLista() {
return tableLista;
}
/**
* Create the frame.
*/
public MainFrame() {
setTitle("Principal");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(100, 100, 629, 451);
contentPane = new JPanel();
contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
setContentPane(contentPane);
JTabbedPane mainTabbedPane = new JTabbedPane(JTabbedPane.TOP);
GroupLayout gl_contentPane = new GroupLayout(contentPane);
gl_contentPane.setHorizontalGroup(
gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addContainerGap()
.addComponent(mainTabbedPane, GroupLayout.DEFAULT_SIZE, 583, Short.MAX_VALUE)
.addContainerGap())
);
gl_contentPane.setVerticalGroup(
gl_contentPane.createParallelGroup(Alignment.LEADING)
.addGroup(gl_contentPane.createSequentialGroup()
.addContainerGap()
.addComponent(mainTabbedPane, GroupLayout.PREFERRED_SIZE, 348, GroupLayout.PREFERRED_SIZE)
.addContainerGap(44, Short.MAX_VALUE))
);
JPanel panelCadastro = new JPanel();
panelCadastro.setBorder(new TitledBorder(UIManager.getBorder("TitledBorder.border"), "Pessoa", TitledBorder.LEADING, TitledBorder.TOP, null, null));
mainTabbedPane.addTab("Cadastro", null, panelCadastro, null);
JLabel lblCodigo = new JLabel("C\u00F3digo:");
lblCodigo.setFont(new Font("Tahoma", Font.PLAIN, 18));
JLabel lblDataCadastro = new JLabel("Dt. Cadastro:");
lblDataCadastro.setFont(new Font("Tahoma", Font.PLAIN, 18));
JLabel label = new JLabel("Nome:");
label.setFont(new Font("Tahoma", Font.PLAIN, 18));
JLabel lblSexo = new JLabel("Sexo:");
lblSexo.setFont(new Font("Tahoma", Font.PLAIN, 18));
txtCodigo = new JTextField();
txtCodigo.setColumns(10);
txtNome = new JTextField();
txtNome.setColumns(10);
txtDataCadastro = new JTextField();
txtDataCadastro.setColumns(10);
final JRadioButton rbtMasculino = new JRadioButton("Masculino");
rbtMasculino.setSelected(true);
buttonGroup.add(rbtMasculino);
JRadioButton rbtFeminino = new JRadioButton("Feminino");
buttonGroup.add(rbtFeminino);
JButton btnCadastrar = new JButton("Cadastrar");
btnCadastrar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
UsuarioDTO usuarioDTO = new UsuarioDTO();
UsuarioBO usuarioBO = new UsuarioBO();
try{
String idUsuario = txtCodigo.getText();
String nome = txtNome.getText();
String dataCadastro = txtDataCadastro.getText();
char sexo = 'M';
// Valida os Campos na Camada de Business
usuarioBO.validaIdUsuarioNulo(idUsuario);
usuarioBO.validaIdUsuarioFormato(idUsuario);
usuarioBO.validaNomeNulo(nome);
usuarioBO.validaNomeCaracteres(nome);
usuarioBO.validaDataCadastroNulo(dataCadastro);
usuarioBO.validaDataCadastroFormato(dataCadastro);
// Carrega os Campos
usuarioDTO.setIdUsuario(Integer.parseInt(idUsuario));
usuarioDTO.setNomeUsuario(nome);
sexo = rbtMasculino.isSelected() ? 'M':'F';
usuarioDTO.setSexo(Character.toString(sexo));
usuarioDTO.setDataCadastro(dateFormat.parse(dataCadastro));
usuarioBO.cadastrar(usuarioDTO);
MensagensUtil.addMsg(MainFrame.this, "Cadastro Efetuado com Sucesso");
MainFrame.this.dispose();
main(null);
} catch (Exception e1) {
e1.printStackTrace();
MensagensUtil.addMsg(MainFrame.this, e1.getMessage());
}
}
});
btnCadastrar.setForeground(Color.BLUE);
btnCadastrar.setFont(new Font("Tahoma", Font.PLAIN, 22));
JButton btnLimpar = new JButton("Limpar");
btnLimpar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
txtCodigo.setText("");
txtNome.setText("");
txtDataCadastro.setText("");
rbtMasculino.setSelected(true);
}
});
btnLimpar.setForeground(Color.BLUE);
btnLimpar.setFont(new Font("Tahoma", Font.PLAIN, 22));
GroupLayout gl_panelCadastro = new GroupLayout(panelCadastro);
gl_panelCadastro.setHorizontalGroup(
gl_panelCadastro.createParallelGroup(Alignment.TRAILING)
.addGroup(gl_panelCadastro.createSequentialGroup()
.addContainerGap()
.addGroup(gl_panelCadastro.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panelCadastro.createSequentialGroup()
.addComponent(lblCodigo)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(txtCodigo, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGroup(gl_panelCadastro.createSequentialGroup()
.addComponent(lblDataCadastro)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(txtDataCadastro, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGroup(gl_panelCadastro.createSequentialGroup()
.addComponent(lblSexo, GroupLayout.PREFERRED_SIZE, 104, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(rbtMasculino)
.addGap(18)
.addComponent(rbtFeminino, GroupLayout.PREFERRED_SIZE, 83, GroupLayout.PREFERRED_SIZE))
.addGroup(gl_panelCadastro.createSequentialGroup()
.addComponent(label, GroupLayout.PREFERRED_SIZE, 61, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(txtNome, GroupLayout.PREFERRED_SIZE, 411, GroupLayout.PREFERRED_SIZE)))
.addContainerGap(31, Short.MAX_VALUE))
.addGroup(gl_panelCadastro.createSequentialGroup()
.addContainerGap(282, Short.MAX_VALUE)
.addComponent(btnCadastrar)
.addPreferredGap(ComponentPlacement.UNRELATED)
.addComponent(btnLimpar, GroupLayout.PREFERRED_SIZE, 127, GroupLayout.PREFERRED_SIZE)
.addGap(20))
);
gl_panelCadastro.setVerticalGroup(
gl_panelCadastro.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panelCadastro.createSequentialGroup()
.addGap(50)
.addGroup(gl_panelCadastro.createParallelGroup(Alignment.BASELINE)
.addComponent(lblCodigo)
.addComponent(txtCodigo, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(18)
.addGroup(gl_panelCadastro.createParallelGroup(Alignment.BASELINE)
.addComponent(label, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE)
.addComponent(txtNome, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGroup(gl_panelCadastro.createParallelGroup(Alignment.TRAILING)
.addGroup(gl_panelCadastro.createSequentialGroup()
.addGap(18)
.addGroup(gl_panelCadastro.createParallelGroup(Alignment.BASELINE)
.addComponent(lblDataCadastro, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE)
.addComponent(txtDataCadastro, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGap(18)
.addGroup(gl_panelCadastro.createParallelGroup(Alignment.BASELINE)
.addComponent(lblSexo, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE)
.addComponent(rbtMasculino)
.addComponent(rbtFeminino))
.addContainerGap(95, Short.MAX_VALUE))
.addGroup(gl_panelCadastro.createSequentialGroup()
.addPreferredGap(ComponentPlacement.RELATED)
.addGroup(gl_panelCadastro.createParallelGroup(Alignment.BASELINE)
.addComponent(btnCadastrar)
.addComponent(btnLimpar, GroupLayout.PREFERRED_SIZE, 35, GroupLayout.PREFERRED_SIZE))
.addGap(29))))
);
gl_panelCadastro.linkSize(SwingConstants.HORIZONTAL, new Component[] {lblCodigo, lblDataCadastro, label});
panelCadastro.setLayout(gl_panelCadastro);
JPanel panelLista = new JPanel();
panelLista.setBorder(new TitledBorder(null, "", TitledBorder.LEADING, TitledBorder.TOP, null, null));
mainTabbedPane.addTab("Lista", null, panelLista, null);
JScrollPane scrollListagem = new JScrollPane();
scrollListagem.setViewportBorder(new EtchedBorder(EtchedBorder.LOWERED, null, null));
GroupLayout gl_panelLista = new GroupLayout(panelLista);
gl_panelLista.setHorizontalGroup(
gl_panelLista.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panelLista.createSequentialGroup()
.addGap(36)
.addComponent(scrollListagem, GroupLayout.PREFERRED_SIZE, 500, GroupLayout.PREFERRED_SIZE)
.addContainerGap(38, Short.MAX_VALUE))
);
gl_panelLista.setVerticalGroup(
gl_panelLista.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panelLista.createSequentialGroup()
.addGap(35)
.addComponent(scrollListagem, GroupLayout.DEFAULT_SIZE, 269, Short.MAX_VALUE)
.addContainerGap())
);
tableLista = new JTable();
scrollListagem.setViewportView(tableLista);
UsuarioBO usuarioBO = new UsuarioBO();
try {
String [][] listaUsuarios = usuarioBO.listar();
tableLista.setModel(new DefaultTableModel(listaUsuarios,
new String[] {
"Nome", "Sexo", "Data de Cadastro"
}
));
} catch (Exception e) {
e.printStackTrace();
MensagensUtil.addMsg(MainFrame.this, e.getMessage());
}
tableLista.setBorder(null);
panelLista.setLayout(gl_panelLista);
JPanel panelConsulta = new JPanel();
mainTabbedPane.addTab("Consulta", null, panelConsulta, null);
JLabel lblCodigoConsulta = new JLabel("C\u00F3digo:");
lblCodigoConsulta.setFont(new Font("Tahoma", Font.PLAIN, 18));
txtCodigoConsulta = new JTextField();
txtCodigoConsulta.setColumns(10);
JLabel lblNomeConsulta = new JLabel("Nome:");
lblNomeConsulta.setFont(new Font("Tahoma", Font.PLAIN, 18));
txtNomeConsulta = new JTextField();
txtNomeConsulta.setColumns(10);
JLabel lblSexoConsulta = new JLabel("Sexo:");
lblSexoConsulta.setFont(new Font("Tahoma", Font.PLAIN, 18));
JRadioButton rbtMasculinoConsulta = new JRadioButton("Masculino");
buttonGroup.add(rbtMasculinoConsulta);
rbtMasculinoConsulta.setSelected(true);
JRadioButton rbtFemininoConsulta = new JRadioButton("Feminino");
buttonGroup.add(rbtFemininoConsulta);
JButton btnConsultar = new JButton("Consultar");
btnConsultar.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
}
});
btnConsultar.setForeground(Color.BLUE);
btnConsultar.setFont(new Font("Tahoma", Font.PLAIN, 22));
JPanel panelListaConsulta = new JPanel();
panelListaConsulta.setBorder(new TitledBorder(null, "Usu\u00E1rios", TitledBorder.LEADING, TitledBorder.TOP, null, null));
GroupLayout gl_panelConsulta = new GroupLayout(panelConsulta);
gl_panelConsulta.setHorizontalGroup(
gl_panelConsulta.createParallelGroup(Alignment.TRAILING)
.addGroup(gl_panelConsulta.createSequentialGroup()
.addContainerGap()
.addGroup(gl_panelConsulta.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panelConsulta.createSequentialGroup()
.addGroup(gl_panelConsulta.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panelConsulta.createSequentialGroup()
.addComponent(lblCodigoConsulta, GroupLayout.PREFERRED_SIZE, 74, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.RELATED)
.addComponent(txtCodigoConsulta, GroupLayout.PREFERRED_SIZE, 47, GroupLayout.PREFERRED_SIZE)
.addGap(18)
.addComponent(lblNomeConsulta, GroupLayout.PREFERRED_SIZE, 62, GroupLayout.PREFERRED_SIZE)
.addPreferredGap(ComponentPlacement.RELATED)
.addComponent(txtNomeConsulta, GroupLayout.PREFERRED_SIZE, 302, GroupLayout.PREFERRED_SIZE))
.addGroup(gl_panelConsulta.createSequentialGroup()
.addComponent(lblSexoConsulta, GroupLayout.PREFERRED_SIZE, 58, GroupLayout.PREFERRED_SIZE)
.addGap(18)
.addComponent(rbtMasculinoConsulta, GroupLayout.PREFERRED_SIZE, 71, GroupLayout.PREFERRED_SIZE)
.addGap(18)
.addComponent(rbtFemininoConsulta, GroupLayout.PREFERRED_SIZE, 83, GroupLayout.PREFERRED_SIZE)))
.addContainerGap(57, Short.MAX_VALUE))
.addGroup(gl_panelConsulta.createSequentialGroup()
.addGroup(gl_panelConsulta.createParallelGroup(Alignment.TRAILING)
.addComponent(panelListaConsulta, GroupLayout.DEFAULT_SIZE, 544, Short.MAX_VALUE)
.addComponent(btnConsultar, GroupLayout.PREFERRED_SIZE, 127, GroupLayout.PREFERRED_SIZE))
.addGap(24))))
);
gl_panelConsulta.setVerticalGroup(
gl_panelConsulta.createParallelGroup(Alignment.LEADING)
.addGroup(gl_panelConsulta.createSequentialGroup()
.addGap(29)
.addGroup(gl_panelConsulta.createParallelGroup(Alignment.TRAILING)
.addGroup(gl_panelConsulta.createParallelGroup(Alignment.BASELINE)
.addComponent(lblNomeConsulta, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE)
.addComponent(txtNomeConsulta, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))
.addGroup(gl_panelConsulta.createParallelGroup(Alignment.LEADING)
.addComponent(lblCodigoConsulta, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE)
.addGroup(gl_panelConsulta.createSequentialGroup()
.addGap(2)
.addComponent(txtCodigoConsulta, GroupLayout.PREFERRED_SIZE, GroupLayout.DEFAULT_SIZE, GroupLayout.PREFERRED_SIZE))))
.addGap(18)
.addGroup(gl_panelConsulta.createParallelGroup(Alignment.LEADING)
.addComponent(lblSexoConsulta, GroupLayout.PREFERRED_SIZE, 22, GroupLayout.PREFERRED_SIZE)
.addComponent(rbtMasculinoConsulta)
.addComponent(rbtFemininoConsulta))
.addGap(18)
.addComponent(panelListaConsulta, GroupLayout.DEFAULT_SIZE, 144, Short.MAX_VALUE)
.addGap(18)
.addComponent(btnConsultar, GroupLayout.PREFERRED_SIZE, 35, GroupLayout.PREFERRED_SIZE)
.addGap(15))
);
JScrollPane scrollPaneConsulta = new JScrollPane();
GroupLayout gl_panelListaConsulta = new GroupLayout(panelListaConsulta);
gl_panelListaConsulta.setHorizontalGroup(
gl_panelListaConsulta.createParallelGroup(Alignment.LEADING)
.addComponent(scrollPaneConsulta, Alignment.TRAILING, GroupLayout.DEFAULT_SIZE, 532, Short.MAX_VALUE)
);
gl_panelListaConsulta.setVerticalGroup(
gl_panelListaConsulta.createParallelGroup(Alignment.LEADING)
.addComponent(scrollPaneConsulta, GroupLayout.DEFAULT_SIZE, 121, Short.MAX_VALUE)
);
tableConsulta = new JTable();
tableConsulta.setModel(new DefaultTableModel(
new Object[][] {
{null, null},
{null, null},
},
new String[] {
"Código", "Nome", "Sexo", "Data de Cadastro"
}
));
scrollPaneConsulta.setColumnHeaderView(tableConsulta);
panelListaConsulta.setLayout(gl_panelListaConsulta);
panelConsulta.setLayout(gl_panelConsulta);
contentPane.setLayout(gl_contentPane);
}
}
Roberto Melo
Curtir tópico
+ 0
Responder
Posts
17/07/2014
Ronaldo Lanhellas
O que é isso ? Post sem tags [code], sem explicação, só postagem de código ?
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)