Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal, tenho o seguinte codigo:
import javax.swing.;import javax.swing.text.;import java.awt.*;public class MascaraEntrada extends JFrame { private JTextField codigo; public MascaraEntrada(){ setTitle("Formatar"); try{ MaskFormatter formatacao = new MaskFormatter("##/##/####"); codigo = new JFormattedTextField(formatacao); codigo.setPreferredSize(new Dimension(75, 20)); } catch(Exception e) { JOptionPane.showMessageDialog(null, "m*****"); } Container tela = getContentPane(); FlowLayout layout = new FlowLayout(FlowLayout.LEFT); tela.setLayout(layout); tela.add(codigo); pack(); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main ( String args[]){ new MascaraEntrada().show(); } }ele formata a data assim ##/##/####
mas como eu faco para qd eu tirar o foco dele fazer uma verificacao de data, eu tenho o codigo de fazer isso e, javascript, mas naum sei como chamar o evento, no javascript seria o onblur...
desculpa a ignorancia, mas sou iniciante em Java, e de vez em qd vou fazer algumas perguntas assim... http://forum.imasters.com.br/public/style_emoticons/default/blush.gif
VALEEEEEWW http://forum.imasters.com.br/public/style_emoticons/default/joia.gif
Cara BRIGADÃO!!!
você me ajudou muito mesmo!!!
VALEW!
http://forum.imasters.com.br/public/style_emoticons/default/joia.gif
Cara soh mais uma coisa... como eu pego o texto dele??import javax.swing.;import javax.swing.text.;import java.awt.;import java.awt.event.;public class MascaraEntrada extends JFrame { private JTextField codigo; private JTextField objeto; public MascaraEntrada(){ setTitle("Formatar"); try{ MaskFormatter formatacao = new MaskFormatter("##/##/####"); codigo = new JFormattedTextField(formatacao); codigo.addFocusListener(new MeuFocusAdapter()); codigo.setPreferredSize(new Dimension(75, 20)); } catch(Exception e) { JOptionPane.showMessageDialog(null, "m*****"); } Container tela = getContentPane(); FlowLayout layout = new FlowLayout(FlowLayout.LEFT); tela.setLayout(layout); tela.add(codigo); pack(); setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); } public static void main ( String args[]){ new MascaraEntrada().show(); } public class MeuFocusAdapter extends FocusAdapter { public void focusGained(FocusEvent e) { // codigo para executar quando o elemento ganhar foco } public void focusLost(FocusEvent e) { JOptionPane.showMessageDialog(null, e.getSource()); // codigo para executar quando o elemento perder foco // No caso, para executar a formatação que você quer, é essa // função que você tem que sobrescrever } }}eu soh consigo dar um JOptionPane no objeto, ele exibe exatamente isso, o objeto inteiro, mas como eu posso pegar o texto para poder fazer a minha validaçao?valew!
JFormattedTextField txt = (JFormattedTextField)e.getSource();JOptionPane.showMessageDialog(null, txt.getText());
Nunca fiz, mas olhando pela api do Java, pode ser isso: Você tem que criar uma classe que implemente um FocusAdapter e adicionar esse evento ao JFormattedTextField. Mais ou menos assim:
public class MeuFocusAdapter extends FocusAdapter { public void focusGained(FocusEvent e) { // codigo para executar quando o elemento ganhar foco } public void focusLost(FocusEvent e) { // codigo para executar quando o elemento perder foco // No caso, para executar a formatação que você quer, é essa // função que você tem que sobrescrever }}Aplique as modificações abaixo, na classe que contém o JFormattedTextField:
// (...)codigo = new JFormattedTextField(formatacao);codigo.addFocusListener(new MeuFocusAdapter());// (...)
Mais detalhes aqui