Виджеты Qt не получают showEvent () при вкладке в области закрепления QMainWindow - PullRequest
1 голос
/ 22 февраля 2020

В QMainWindow, когда несколько областей виджетов объединены в области закрепления, как я могу определить, когда вкладка была переключена пользователем? Это не проблема, когда у меня есть экземпляр QTabWidget, созданный мной, и я могу присоединить обработчик к currentChanged (), но как насчет этого случая, когда главное окно внутренне выполняет операции закрепления / табуляции? Обычно он запускается showEvent (), но по какой-то причине он не работает при переключении вкладок. Кроме того, для виджета, находящегося не на активной вкладке, включено состояние видимости (isVisible () возвращает true), что странно.

1 Ответ

1 голос
/ 22 февраля 2020

Я нашел ответ. Это QMainWindow :: tabifiedDockWidgetActivation (), который сигнализируется при изменении вкладки на прикрепленном виджете. Он был добавлен в Qt 5.8. Без этого нет пути.

...