Boa tarde colegas, estou com o seguinte problema, estou implementando um aplicativo, que usa um JCalendar, ele ja esta adicionado em um JPanel, a duvida é o seguinte:
como faço para pegar uma data selecionada no calendario e coloca-la em um JTextField, pra colocar um conteudo no JTextField eu sei, agora como pego a data qdo ela for selecionada.
Moises,
v se eu intendiii, vc precisa pegar o valor do jpanel?
na verdade, preciso pegar uma valor(uma data) de um JCalendar, que esta no JPanel, tipo, clico em uma data qualquer, e coloca a mesma em um JTextField
como faço, para tratar um evento ocorrido no calendario
Moises faz direto, insere a data direto no jtextfiled
//****INSERE A DATA NO DATA****//
Date data = new Date();
String dia =""+data.getDate();
//****SOMA +1 POIS ELE CONTA O MES A PARTIR DO 0****//
String mes =""+String.valueOf(data.getMonth()+1);
//****SOMA +1900 POIS ELE COMEÇA A CONTAR O ANO A PARTIR DE 1900****//
String ano =""+(1900 + data.getYear());
if (Integer.parseInt(mes)<=9)
mes="0"+mes;
jTEXTFIELD.setText(dia+"/"+mes+"/"+ano);
Se não for o jeito que vc precisa pode postar
pois é Vinicius, dessa forma eu consigo fazer, contudo não é a forma que eu preciso, porque o usuario escolhera a data no calendario.
da uma olhada no codigo pra ver se vc entende
[/*
- To change this template, choose Tools | Templates
- and open the template in the editor.
*/
package br.com.controledehorario;
import de.wannawork.jcalendar.JCalendarPanel;
import java.awt.Container;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.border.Border;
import javax.swing.border.EtchedBorder;
import javax.swing.border.TitledBorder;
import javax.swing.table.DefaultTableModel;
/**
*
-
@author Moises.Moura
*/
public class FormaGradeTeste2 extends JFrame implements ActionListener{
private JLabel lbNome;
private JLabel lbDiaSemana;
private JLabel lbDisciplina;
private JLabel lbProfessor;
private JLabel lbHora;
private JLabel lbSerie;
private JLabel lbDataAula;
private JLabel lbMatricula;
private JLabel lbCodDisciplina;
private JLabel lbMatProfessor;private JTextField txtMatProfessor;
private JTextField txtNome;
private JTextField txtMatricula;
private JTextField txtDataAula;
private JTextField txtDiaSemana;
private JTextField txtCodDisciplina;private JComboBox cmbDisciplina;
private JComboBox cmbProfessor;
private JComboBox cmbHoras;
private JComboBox cmbSerie;private JButton btnLimpar;
private JButton btnSalvar;
private JButton btnAlterar;
private JButton btnExcluir;
private JButton btnSair;
private JButton btnOk;
private JButton btnFiltrar;
private JButton btnCancelar;private JCalendarPanel cal;
private JTable jtbGradeFormada;private DefaultTableModel dftm=new DefaultTableModel();
private String []nomeColunas={“Aluno(a):”,“Série:”,“Disciplina:”,“Professor(a):”,“Data:”,“Hora/aula:”};private JScrollPane jspGrade;
Border bordaPainelMontaGrade;
private JPanel painelTabela;
private Border bordaTabela;
private JPanel painelMontaGrade;
private JPanel painelCal;public FormaGradeTeste2()
{
super();
initComponents();
}
public FormaGradeTeste2(String titulo)
{
super (titulo);
initComponents();
}
@SuppressWarnings(“static-access”)private void initComponents() {
setLayout(null);Object[][] conteudo = {{"","","","",""}, {"","","","",""}}; Container c= getContentPane(); painelMontaGrade = new JPanel(); painelCal=new JPanel(); painelTabela=new JPanel(); cal=new JCalendarPanel(); bordaTabela=BorderFactory.createEtchedBorder(EtchedBorder.RAISED); TitledBorder tbTabela= BorderFactory.createTitledBorder(bordaTabela, " Grade horária "); Border rbbBorda=BorderFactory.createEtchedBorder(EtchedBorder.RAISED); TitledBorder tbBorda = BorderFactory.createTitledBorder( rbbBorda, "Montagem da Grade horária" ); jtbGradeFormada=new JTable(dftm); jspGrade=new JScrollPane(jtbGradeFormada); txtNome=new JTextField(); txtDataAula=new JTextField(); txtDiaSemana=new JTextField(); txtMatricula=new JTextField(); txtCodDisciplina=new JTextField(); txtMatProfessor=new JTextField(); cmbDisciplina=new JComboBox(); cmbProfessor=new JComboBox(); cmbHoras=new JComboBox(); cmbSerie=new JComboBox(); //btnConsultar=new JButton("Consultar"); btnLimpar=new JButton("Limpar"); btnFiltrar=new JButton("Filtrar"); btnExcluir=new JButton("Excluir"); btnCancelar=new JButton("Cancelar"); btnSalvar=new JButton("Salvar"); btnOk=new JButton("Ok"); // btnConfirmar=new JButton("Confirmar"); btnAlterar=new JButton("Alterar"); btnSair=new JButton("Sair"); lbDisciplina=new JLabel ("Disciplina:"); lbCodDisciplina=new JLabel("Cód. Disc. :"); lbProfessor=new JLabel("Professor:"); lbMatProfessor=new JLabel("Mat. Prof. :"); lbNome=new JLabel("Aluno(a):"); lbMatricula=new JLabel("Matricula:"); lbHora=new JLabel("Horário:"); lbSerie=new JLabel("Série:"); lbDiaSemana=new JLabel("Dia Semana:"); lbDataAula=new JLabel("Data Selecionada:"); String []teste={"08:00 às 10:00","10","",""}; cmbHoras.addItem("08:00 às 10:00"); cmbHoras.addItem("10:00 às 12:00"); cmbHoras.addItem("14:00 às 16:00"); cmbHoras.addItem("16:00 às 18:00"); cmbSerie.addItem("5º Série"); cmbSerie.addItem("6º Série"); cmbSerie.addItem("7º Série"); cmbSerie.addItem("8º Série"); dftm.setDataVector(conteudo, nomeColunas); //itens adicionados no Painel com a borda lbNome.setBounds(25,35,100,25); txtNome.setBounds(25,65,315,25); lbMatricula.setBounds(350,35,100,25); txtMatricula.setBounds(350,65,100,25); btnFiltrar.setBounds(460,65,90,25); /*lbNome.setBounds(25,100,100,25); txtNome.setBounds(25,130,315,25);*/ lbDisciplina.setBounds(25,100,80,25); cmbDisciplina.setBounds(25,130,120,25); lbCodDisciplina.setBounds(155,100,120,25); txtCodDisciplina.setBounds(155,130,120,25); lbProfessor.setBounds(290,100,100,25); cmbProfessor.setBounds(290,130,150,25); lbMatProfessor.setBounds(450,100,100,25); txtMatProfessor.setBounds(450,130,100,25); cal.setBounds(580,55,150,220); lbHora.setBounds(25,170, 80,25); cmbHoras.setBounds(25,200 ,100, 25); lbSerie.setBounds(140,170,80,25); cmbSerie.setBounds(140,200,100,25); lbDataAula.setBounds(255,170,120,25); txtDataAula.setBounds(255,200,120,25); lbDiaSemana.setBounds(385,170,120,25); txtDiaSemana.setBounds(385,200,120,25); btnOk.setBounds(25,260, 100,25); btnLimpar.setBounds(140,260,100,25); btnCancelar.setBounds(255,260,100,25); btnSalvar.setBounds(150,155,100,25); btnAlterar.setBounds(270,155,100,25); btnExcluir.setBounds(390,155,100,25); btnSair.setBounds(510,155,100,25); painelMontaGrade.setBounds(40,30,770,350); painelTabela.setBounds(40,400,770,200); painelCal.setBounds(500,100,100,25); jspGrade.setBounds(25,40,720,100); painelMontaGrade.setLayout(null); painelTabela.setLayout(null); //tbTabela //bordaTabela painelTabela.setBorder(tbTabela); painelMontaGrade.setBorder(tbBorda); painelTabela.add(jspGrade); painelTabela.add(btnSalvar); painelTabela.add(btnAlterar); painelTabela.add(btnExcluir); painelTabela.add(btnSair); painelMontaGrade.add(lbDisciplina); painelMontaGrade.add(cmbDisciplina); painelMontaGrade.add(lbCodDisciplina); painelMontaGrade.add(txtCodDisciplina); painelMontaGrade.add(lbProfessor); painelMontaGrade.add(cmbProfessor); painelMontaGrade.add(lbMatProfessor); painelMontaGrade.add(txtMatProfessor); painelMontaGrade.add(lbNome); painelMontaGrade.add(txtNome); painelMontaGrade.add(btnFiltrar); painelMontaGrade.add(lbMatricula); painelMontaGrade.add(txtMatricula); painelMontaGrade.add(lbHora); painelMontaGrade.add(cmbHoras); painelMontaGrade.add(lbSerie); painelMontaGrade.add(cmbSerie); painelMontaGrade.add(lbDataAula); painelMontaGrade.add(txtDataAula); painelMontaGrade.add(lbDiaSemana); painelMontaGrade.add(txtDiaSemana); painelMontaGrade.add(btnLimpar); painelMontaGrade.add(btnOk); painelMontaGrade.add(btnCancelar); painelMontaGrade.add(cal); c.add(painelMontaGrade); c.add(painelTabela); //eventos dos botões btnSalvar.addActionListener(this); btnAlterar.addActionListener(this); btnExcluir.addActionListener(this); btnExcluir.addActionListener(this); btnSair.addActionListener(this); btnOk.addActionListener(this); btnLimpar.addActionListener(this); btnCancelar.addActionListener(this); //aqui a dificuldade, como adiciono um evento para um dado do calendario setSize(850,700); setLocation(200,20); setVisible(true); setDefaultCloseOperation(EXIT_ON_CLOSE);
}
public void actionPerformed(ActionEvent e) {
if(e.getSource()==btnLimpar)
{
JOptionPane.showMessageDialog(null,“Botão Limpar foi acionado”);
}
if(e.getSource()==btnSalvar)
{
JOptionPane.showMessageDialog(null,"Botão Salvar foi acionado ");
}
if(e.getSource()==btnSair)
{
JOptionPane.showMessageDialog(null,“Saindo do programa”);
System.exit(0);
}
if(e.getSource()==cal)
{
//aqui entrara o codigo que tratará o evento da data selecionada no
//calendario
}}
public static void main(String[] args) {
FormaGradeTeste2 inc=new FormaGradeTeste2(“Testee”);
// inc.initComponents();
}
}
]
ola tentei estudar o código acima e obtive dificuldade em achar a classe jcalendarpanel… ???
Compiling 1 source file to C:\Documents and Settings\raghyjose\TesteThreadETc\build\classes
C:\Documents and Settings\raghyjose\TesteThreadETc\src\testethreadetc\FormaGradeTeste2.java:72: cannot find symbol
symbol : class JCalendarPanel
location: class testethreadetc.FormaGradeTeste2
private JCalendarPanel cal;
C:\Documents and Settings\raghyjose\TesteThreadETc\src\testethreadetc\FormaGradeTeste2.java:108: cannot find symbol
symbol : class JCalendarPanel
location: class testethreadetc.FormaGradeTeste2
cal=new JCalendarPanel();
2 errors
CONSTRUÇÃO FALHOU (tempo total: 5 segundos)
tambem estou com outro código que é para isto o estudo, onde, quero que a data seje atualizada a todo momento, uma data viva, e nao acontece isto…
segue
package yatzi_ou_general;
import java.util.Date;
/**
*
* @author raghyjose
*/
public class Yatzi_Net extends javax.swing.JFrame {
Date data=new Date();
/** Creates new form Yatzi_Net */
public Yatzi_Net() {
initComponents();
String dia =""+data.getDate();
String mes =""+String.valueOf(data.getMonth()+1);
String ano =""+(1900 + data.getYear());
if (Integer.parseInt(mes)<=9) {
mes="0"+mes;
//jThora.setText(""+data);
jThora.setText(dia+"/"+mes+"/"+ano);
}
String hora1=""+String.valueOf(data.getTime());
String hora=""+String.valueOf(data.getHours());
String minuto=""+String.valueOf(data.getMinutes());
String segundos=""+String.valueOf(data.getSeconds());
if (Integer.parseInt(segundos)<=10) {
segundos="0"+segundos;
}
//jThora2.setText(hora+":"+minuto+":"+segundos);
jThora2.setText(""+hora1);
}
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jPanel1 = new javax.swing.JPanel();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jTInicio1 = new javax.swing.JTextField();
jTParar1 = new javax.swing.JTextField();
jThora = new javax.swing.JTextField();
jLabel1 = new javax.swing.JLabel();
jThora2 = new javax.swing.JTextField();
jLabel2 = new javax.swing.JLabel();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jButton1.setText("iniciar");
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jButton2.setText("parar");
jButton2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton2ActionPerformed(evt);
}
});
jTParar1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jTParar1ActionPerformed(evt);
}
});
javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout
(jPanel1);
jPanel1.setLayout(jPanel1Layout);
jPanel1Layout.setHorizontalGroup(
jPanel1Layout.createParallelGroup
(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(21, 21, 21)
.addGroup(jPanel1Layout.createParallelGroup
(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addComponent(jButton1)
.addPreferredGap
(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButton2))
.addGroup(jPanel1Layout.createParallelGroup
(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(jTInicio1,
javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jTParar1,
javax.swing.GroupLayout.Alignment.LEADING,
javax.swing.GroupLayout.DEFAULT_SIZE, 92, Short.MAX_VALUE)))
.addContainerGap(83, Short.MAX_VALUE))
);
jPanel1Layout.setVerticalGroup(
jPanel1Layout.createParallelGroup
(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(jPanel1Layout.createSequentialGroup()
.addGap(123, 123, 123)
.addGroup(jPanel1Layout.createParallelGroup
(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jButton1)
.addComponent(jButton2))
.addGap(18, 18, 18)
.addComponent(jTInicio1, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap
(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jTParar1, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(43, Short.MAX_VALUE))
);
jThora.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jThoraActionPerformed(evt);
}
});
jLabel1.setText("Data Atual:");
jThora2.setText("jTextField2");
jThora2.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jThora2ActionPerformed(evt);
}
});
jLabel2.setText("hora atual:");
javax.swing.GroupLayout layout = new javax.swing.GroupLayout
(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(28, 28, 28)
.addComponent(jLabel1)
.addGap(18, 18, 18)
.addComponent(jThora, javax.swing.GroupLayout.PREFERRED_SIZE, 170,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap
(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 78, Short.MAX_VALUE)
.addComponent(jLabel2)
.addGap(18, 18, 18)
.addComponent(jThora2, javax.swing.GroupLayout.PREFERRED_SIZE, 149,
javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(80, 80, 80))
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(415, Short.MAX_VALUE))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(19, 19, 19)
.addGroup(layout.createParallelGroup
(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel1)
.addComponent(jThora, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel2)
.addComponent(jThora2, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(72, 72, 72)
.addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE,
javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(86, Short.MAX_VALUE))
);
pack();
}// </editor-fold>
private void jThoraActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void jThora2ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
String hora=""+String.valueOf(data.getHours());
String minuto=""+String.valueOf(data.getMinutes());
String segundos=""+String.valueOf(data.getSeconds());
jTInicio1.setText(hora+":"+minuto+":"+segundos);
}
private void jTParar1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
String hora=""+String.valueOf(data.getHours());
String minuto=""+String.valueOf(data.getMinutes());
String segundos=""+String.valueOf(data.getSeconds());
jTInicio1.setText(hora+":"+minuto+":"+segundos);
jTParar1.setText(hora+":"+minuto+":"+segundos);
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
//Date= new Date();
new Yatzi_Net().setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JPanel jPanel1;
private javax.swing.JTextField jTInicio1;
private javax.swing.JTextField jTParar1;
private javax.swing.JTextField jThora;
private javax.swing.JTextField jThora2;
// End of variables declaration
}