Проблемы focusNextChild в PyQt
-
16-09-2019 - |
Вопрос
Я пытаюсь переключить фокус с одного виджета на другой, используя focusNextChild()
метод.Это работает, но мне кажется, есть небольшая разница между использованием клавиши табуляции и выполнением действий в коде.Если следующим элементом управления является кнопка, то использование клавиши табуляции приведет к появлению кнопки с фокусом, а ее заголовок будет окружен маленькими точками, поэтому вы сразу увидите, какой элемент управления находится в фокусе.При использовании кода точки не видны.Как заставить точки появиться?
Решение
Эта проблема (прямоугольник фокуса не рисуется, за исключением случаев использования явной фокусировки с клавиатуры;напримерс помощью клавиши табуляции) может быть результатом того, как выбранная тема (и оконный менеджер?) решит отображать данный элемент.
Некоторые темы могут отображать прямоугольники фокуса вокруг «любого» элемента, который получает фокус, в то время как другие будут рисовать прямоугольники фокуса только при явном использовании навигации с помощью «клавиатуры».
Суммируя:это, вероятно, проблема конкретной темы.