[RESOLVIDO]JSpinner( controle giratório ) - Impedir que o usuário focalize o componente

Boa Noite

Estou usando um JSpinner para determinar a quantidade de um produto em um sistema que estou desenvolvendo, porém não quero que o usuário possa digitar o valor pelo teclado e sim somente pelos botões de incremento e decremento do componente.

Tentei desmarcar a propriedade “focusable” no painel de propriedades que aparece no NetBeans e não surtiu efeito algum.

Tentei também acessar diretamente o componente que contém o número pelo método getComponentAt(), mas não entendi muito bem que componente é esse. Pensei ser um instância de um JTextField, mas não é( comparando com um JTextField usando instanceOf retornou false).

Alguém sabe como posso fazer para que o usuário NÃO tenha como editar o valor pelo teclado?

Obrigado pela atenção.

Fala galera, já consegui resolver o problema aqui. Estou postando como resolvi:


        /**
         * As duas linhas abaixo obtém o editor do JSpinner e em seguida
         * o textField que contém o número e determina, utilizando o método setFocusable(), que esse componente
         * não pode ser focalizado.
         */
        JComponent editor = jSpinner.getEditor();
        ( (DefaultEditor)editor).getTextField().setFocusable( false ); // Converte para DefaultEditor e acessa o TextField
1 curtida