JScrollPane movimentar barra de rolagem apenas quando foco estiver na tela

5 respostas
D

Boa tarde,

Estou com o seguinte problema, tenho um componente que criei em um JFrame, esse componente funciona como um JCombobox porém com algumas opções de filtro personalizadas. Esse mesmo JFrame possui um JScrollPane para que o usuário possa ver todo seu conteúdo.

O problema é quando esse meu componente está sendo utilizado, ou seja o foco esta nele, e o usuário digita seta para baixo para percorrer os itens do combo, nesse momento a tela desce junto pois o JScrollPane também recebe o evento do teclado.

Gostaria de saber se existe alguma forma do JScrollPane rolar apenas quando o foco estiver no JFrame e não em seus componentes.

Abçs! 8)

5 Respostas

E

Pera aí. Como é que você conseguiu fazer isso?

D

Fazer isso o que?

E

Fazer com que o JScrollPane se mova juntamente com o JComboBox. Por default, isso não deveria ocorrer nunca.

Ao tratar as setas do seu componente que é derivado de JComboBox você fez algo fora do padrão?

D

Então ai que ta rs…

o meu componente não deriva de JCombobox, ele funciona como se fosse um combobox mas na verdade tem uma label para digitação e um botão que abre um menu como o do Jcombobox

E

Sei. Então o problema não é com o JScrollPane (que é um pobre coitado nessa história) e sim alguma coisa esquisita que seu componente faz.

Criado 16 de julho de 2013
Ultima resposta 16 de jul. de 2013
Respostas 5
Participantes 2