Olá pessoal!!
Alguém sabe como deixar pintado o conteúdo de um componente (tipo, como se tivesse passado o mouse por cima para apagar)?
Outra coisa: para acessar esse componente deve - se apenas usar TAB e nunca o mouse.
Assim: a cada tab dado, o cursor passa nos componentes. E em cada um que ele passar, deve pintar o conteúdo (para quando a pessoa escrever, o conteudo sumir).
Alguém sabe?
Valeu!!!
Como deixar selecionado o conteudo de um componente GUI?
8 Respostas
hein?! :?
A Paz!!
Acho que nosso amigo está nos falando em como deixar selecionado o conteúdo de um textField, de forma que qualquer caracter escrito apagará o conteúdo anterior.
É isto Rodrigo ?
Márcio
Vou dar um exemplo:
Vamos supor que eu tenha 2 JTextFields. Um embaixo do outro.
Quando quero passar de um para o outro, só poderei usar TAB e nunca o mouse.
Quando eu estiver com o cursor (não é o mouse, é o cursorzinho que fica piscando) em um JTextField, ele deve selecionar o que estiver escrito nele. Então, se o usuário tentar escrever alguma coisa, o conteúdo se apaga e entre o que o usuário digitou.
Acho que agora ficou mais fácil
:lol:
é isso mesmo márcio!!!
Como faço???
Rodrigo,
Para selecionar, tem dois métodos que devem ser aplicados no evento do ganho do foco
jTextField.addFocusListener(new java.awt.event.FocusAdapter() {
public void focusGained(java.awt.event.FocusEvent e) {
System.out.println("focusGained()"); // TODO Auto-generated Event stub focusGained()
}
});
que são : setSelectionStart() e setSelectionEnd()
Agora, quanto a inibir o mouse, não sei se tem jeito.
Márcio
Blz márcio, vou tentar!!
Agora, quanto ao mouse, não vou inibir ele não. Mas eu precisava desta funcionalidade no sistema. Justamente para não usar o mouse, mas se o usuário quiser usar, sem problemas.
Vou tentar, depois posto se funcionou!!
Valeu!!
Márcio, consegui que aparecesse uma mensagem quando se obtém o foco do componente, mas falta selecionar o seu conteúdo. Ou seja, falta pintar o que está dentro do componente, como se tivesse clicado com o mouse e selecionado o seu conteúdo. Daí é só escrever que automaticamente apaga o que estava escrito.
quem puder ajudar agradeço!!
Resolvi!
é só fazer assim:
para selecionar tudo do textfield, coloque esta linha dentro de um método focusGained(FocusEvent e)
textField.selectAll();
e colocar a interface FocusListener. Não esqueça de usar também o método focusLost, pois a interface pede.
Valeu galera!!!