Я реализовал код в focusGained, который в некоторых случаях может привести к тому, что компонент (контейнер, который я установил как фокусируемый), который только что получил этот фокус, будет удален с экрана и заменен в контейнере другим компонентом. Это также приведет к перерисовке экрана для отображения измененного компонента.
Это работает, но у меня есть небольшая проблема в том, что следующий компонент в контейнере также получает фокус, и поэтому мой код удаляет / заменяет это также. Я предполагаю, что это потому, что при перерисовке этот компонент теперь занимает то же место, где первоначально происходил отвод.
Если последний компонент в контейнере был первоначально выбран, то компоненту замены самому уделяется внимание, и поэтому удаляется и заменяется.
Любые идеи о том, что я, возможно, неправильно кодировал или что я могу сделать, чтобы избежать второго вызова focusGained?