Почему QToolButton нельзя скрыть после его добавления в QToolBar?
Это работает...
QToolButton * toolbutton = new QToolButton(this);
//hide before addWidget
toolbutton->hide();
addWidget(toolbutton);
Но это не
QToolButton * toolbutton = new QToolButton(this)
addWidget(toolbutton);
//hide after addWidget
toolbutton->hide();
Есть ли альтернатива, чтобы я мог на самом деле скрыться после QToolButton после того, как он был добавлен в QToolBar? Мне нужно во время выполнения.
3 ответа
Решение
Одна альтернатива - добавить QAction вместо виджета, а затем скрыть QAction. Я пробовал, и он работает с QAction::setVisible(false).
Вы также можете сделать что-то вроде QToolBar::actions(). At(3)->setVisible(false); если вы знаете положение виджета в QToolBar.
QAction * QToolBar::addWidget ( QWidget * widget )
Вы должны скрыть возвращенный QAction