Неверный переход курсора между компонентами по нажатию TAB - Java

Узнай цену своей работы

Формулировка задачи:

Добрый день! Создал форму JDialog. По нажатию кнопки TAB на клавиатуре должен осуществляться переход между компонентами, располагающимися на ней. Настроил переход (через свойство "

tab order

" компонента JContentPane) в порядке tf1 --

tf2

-- tf3 -- ... (см. вложение), где tf1 -- JTextField под JLabel "Название", tf2 -- JTextField под JLabel "Тип" и tf3 -- JTextArea:
getContentPane().setFocusTraversalPolicy(new FocusTraversalOnArray(new Component[]{tf1, tf2, tf3, okButton, cancelButton}));
Запустил программу, а она всё равно продолжает гнуть свою линию и выполнять переход в порядке tf1 --

tf3

-- tf2 -- ... Уже создал еще один проект и попробовал поиграться разными способами (и исключал tf3 с порядка, и перемещал tf3), но всё оказалось тщетно. Такое ощущение, что это поле свойств к JContentPane в WindowBuilder'е вообще не берётся в учёт. Отсюда вопрос:

зачем оно нужно и как им пользоваться?

Мануал к классу FocusTraversalOnArray тоже ни к каким идеям не привёл. Строка в коде, отвечающая за порядок есть, а на деле поведение программы не соответствует прописанному в коде.

Решение задачи: «Неверный переход курсора между компонентами по нажатию TAB»

textual
Листинг программы
this.setFocusTraversalPolicyProvider(true);

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.4 из 5