2
Предполагая, что у меня есть QTabWidget, который содержит 5 суб-вкладок. Теперь я хочу, чтобы показать/скрыть вложенную вкладку в одном из 5 подгрупп вкладок следующий кодПоказать/скрыть суб-вкладку на QTabWidget
ui->twListTabs->widget(0)->hide(); // Hide first sub-tab
Но это не работает для меня. У вас есть решения?
Спасибо!
Если у вас есть вкладка в дизайнере пользовательского интерфейса Qt Creator, нет необходимости в такой сложности. Просто используйте 'removeTab', а затем, чтобы добавить его обратно, просто используйте функцию« findChild », чтобы потянуть вкладку (она все еще там, управляемая объектом пользовательского интерфейса, даже после удаления из виджета вкладки). См. Комментарий от 12 августа 2011 года здесь: http://www.qtcentre.org/threads/16505-Hiding-a-tab-in-QTabBar-widget?p=200059#post200059 (и это работает для меня, через 6 лет). –
@ Dan Nissenbaum да, это вопрос стиля кодирования. Вы видите много кода вокруг хранения указателей на различные элементы управления gui, но я также начал использовать findChild больше. Также обратный вызов лямбда, доступный на C++ 11, уменьшает необходимость хранения указателей. – user2672165