Olá.
Tenho 5 JTextArea na minha aplicação.
Criei um menu Editar e um menuitem Copiar. Como evento desse menuitem, obvio, quero que ele copie o texto selecionado, mas pra isso preciso saber em qual das 5 JTextArea está a seleção.
Já tentei algumas coisas que vi na net, como o getCariotPosition(), mas pareec que funciona apenas para uma JTextArea especifica (que é o que estou tentando descobrir).
Há alguma função pra isso?
Há outra forma de fazer isso?
Obrigado.
Voce pode ver primeiro qual jTextArea tem o focus depois pegar o texto selecionado.
hasFocus resolve isso.
Ou a solução do thingol.
[quote=Mark_Ameba]Voce pode ver primeiro qual jTextArea tem o focus depois pegar o texto selecionado.
hasFocus resolve isso.
Ou a solução do thingol.[/quote]
Mark, foi uma ótima solução, mas não funcionou. Não entendi o porque, também. tentei usar isFocusOwner() e nada também.
também tentei
Component compFocusOwner = KeyboardFocusManager.getCurrentKeyboardFocusManager().getFocusOwner();
Mas não retornou nada que eu entendesse.
Pensei no que o Thingol disse e realmente foi mais imples, apesar de eu achar mais feio =x
mas fazer o que né…
Ficou assim:
private void copiarSelecao(){
AreaDeTransferencia clipboard = new AreaDeTransferencia();
if(texto_twitter.getSelectedText() != null)
clipboard.setClipboardContents(texto_twitter.getSelectedText());
if(texto_blog.getSelectedText() != null)
clipboard.setClipboardContents(texto_blog.getSelectedText());
if(texto_noticia.getSelectedText() != null)
clipboard.setClipboardContents(texto_noticia.getSelectedText());
if(texto_noticia2.getSelectedText() != null)
clipboard.setClipboardContents(texto_noticia2.getSelectedText());
if(texto_destaque.getSelectedText() != null)
clipboard.setClipboardContents(texto_destaque.getSelectedText());
}
Obrigado.
Agora me resta descobrir como colar um texto em qualquer posição =x Alguma sugestão?
Use o método
insert(String <texto>, int <posição> );
Ele insere o texto que foi passado na posição definida no parâmetro.
[]'s