Funcionamento do JFormattedTextField

2 respostas
E

Ola,

Eu criei um campo de data/hora assim:

MaskFormatter format = new MaskFormatter();

format.setPlaceholderCharacter(’_’);

format.setMask("##/##/#### ##:##");

DataIniServTextField = new JFormattedTextField(format);

Ele funciona bem se eu digito todos os numeros e pulo
para outro campo. Mas se esqueco algum numero e saio
do campo, ele limpa tudo. No caso eu nao posso, por
exemplo, preencher apenas a data e depois a hora?

Se for assim mesmo, ate nao é tao critico, o pior é o
seguinte: se eu digito a data/hora, saio do campo e
depois tento voltar e limpar tudo, ou mesmo alterar
o conteudo, ele nao deixa, sempre pega o 1o. valor
que foi digitado. Como se resolve isso, para manter o
ultimo valor?

2 Respostas

keller

estranho cara uso JFormattedTextField aqui e nao tenho esse problema… tem como colar um trecho do codigo ? muito estranhoo… :roll:

E
MaskFormatter format = new MaskFormatter();

format.setPlaceholderCharacter(’_’);

format.setMask("##/##/#### ##:##:##");

DataIniServTextField = new JFormattedTextField(format);

DataIniServTextField.setColumns(12);

panelDados.add(DataIniServTextField);

Detalhe: eu criei um metodo para usar ENTER para pular de campo. Sera que isso pode ter algo a ver?

meuframe.addEnterToTraversalKeyStrokes(DataIniServTextField);

public static void addEnterToTraversalKeyStrokes(Component comp) {

int forward = KeyboardFocusManager.FORWARD_TRAVERSAL_KEYS;

Set forwardKeys = comp.getFocusTraversalKeys(forward);

Set newForwardKeys = new HashSet(forwardKeys);

newForwardKeys.add(KeyStroke.getKeyStroke(ENTER));

comp.setFocusTraversalKeys(forward, newForwardKeys);

}
Criado 8 de outubro de 2004
Ultima resposta 13 de out. de 2004
Respostas 2
Participantes 2