В моем приложении у меня есть 3 класса, которые расширяют JInternalframe
. Один из них MainFrame
. Предположим, что Mainframe
имеет четыре JTextFields
. TF1, TF2, TF3, TF4
. Когда MainFrame
открывается, TF1
получает фокус по умолчанию.
Теперь пользователь нажмет Enter и перейдет к TF2
. На следующем шаге в зависимости от условия будет открыт другой JInternalFrame SubFrame_1
или SubFrame_2
как плавающее окно.
SubFrame_1
имеет четыре разных текстовых поля. TF5, TF6, TF7, TF8
. Снова TF5
получил фокус по умолчанию. Здесь будут выполнены некоторые расчеты, и когда пользователь нажмет кнопку ввода, TF8
SubFrame_1
будет удалено. И MainFrame должен восстановить фокус в TF3
. То же условие может быть применено к SubFrame_2
. Но когда SubFrame_1 удаляется, TF3
никогда не получает фокус. Еще ужаснее то, что иногда MainFrame не фокусируется, когда SubFrame удаляется. Как я могу избавиться от этой проблемы? Я пробовал всевозможные функции requestFocusInWindow()
, requestFocus()
, grabFocus()
и т. д. Пожалуйста, помогите.