Bom dia, pessoal to com uma duvida aqui alguem pode me da uma mao? coisa simples
eu tenho um jtextfield que contem strings nele, e eu precisava fazer o seguinte…
Quando o jtextfield com o texto FORUMGUJ ganhar focu e eu digitar alguma coisa nele, ele limpar o campo!, mas ele so pode limpar o campo depois que receber alguma entrada se texto, se ele apenas ganhar o focus n pode apagar a string! alguem ja fez isso? obrigada pela atencao!
JTextField
7 Respostas
acho que daria para fazer a verificação no evento KeyListener, método keyPressed…
Fernando
keypressed n da pq ai ele n vai aceita entrada de numero nenhum pq, no keypressed ele so aceita o primeiro valor logo apos eu digitar a 2 string ele apaga e so fica o primeiro digitado!
Oi,
Quando seu JTextField receber o foco, você pode utilizar as propriedades setSelection (end, start etc…) para isso! Sendo assim ao digitar o primeiro caracter no campo, ele irá apagar automaticamente.
Tchauzin!
Oi lina como sempre atenciosa, obrigado mais uma vez por sua atencao!!
Viu dei uma pesquisada e nao achei muita coisa de implementacao sobre o setSelectionStart e tb setSelectionEnd vc tem algum exemplo de implementacao? obrigada!
algo parecido com isso??
public class TesteJTextField extends javax.swing.JFrame {
private static final long serialVersionUID = 1L;
private JTextField tf1;
private JTextField tf2;
public TesteJTextField() {
tf1 = new JTextField(20);
tf2 = new JTextField(20);
tf2.setText("Teste Teste");
tf2.addFocusListener(new FocusListener() {
@Override
public void focusGained(FocusEvent e) {
tf2.setSelectionStart(0);
tf2.setSelectionEnd(tf2.getText().length());
}
@Override
public void focusLost(FocusEvent e) {
// TODO Auto-generated method stub
}
});
getContentPane().setLayout(new FlowLayout());
getContentPane().add(tf1);
getContentPane().add(tf2);
}
public static void main(String args[]) {
TesteJTextField t = new TesteJTextField();
t.pack();
t.setVisible(true);
}
}
algo parecido com isso??public class TesteJTextField extends javax.swing.JFrame { private static final long serialVersionUID = 1L; private JTextField tf1; private JTextField tf2; public TesteJTextField() { tf1 = new JTextField(20); tf2 = new JTextField(20); tf2.setText("Teste Teste"); tf2.addFocusListener(new FocusListener() { @Override public void focusGained(FocusEvent e) { tf2.setSelectionStart(0); tf2.setSelectionEnd(tf2.getText().length()); } @Override public void focusLost(FocusEvent e) { // TODO Auto-generated method stub } }); getContentPane().setLayout(new FlowLayout()); getContentPane().add(tf1); getContentPane().add(tf2); } public static void main(String args[]) { TesteJTextField t = new TesteJTextField(); t.pack(); t.setVisible(true); } }
Oi,
Isso mesmo =)
Tchauzin!
muitissimamente obrigado!