Можно ли добавить QToolbar в QDockWidget?

Я настроил свое приложение так, чтобы в главном окне были различные окна док-станции. Я также могу добавить панель инструментов в главное окно. Однако в идеале я хотел бы добавить QToolBar в один из экземпляров QDockWindow (или QWidget, который он содержит), поскольку панель инструментов будет специфичной для этого окна.

Это возможно? Я использую последнюю версию Qt, 5.10.


person Alan Spark    schedule 26.10.2018    source источник


Ответы (1)


Я думаю, что это возможно.

1.QDockWidget можно установить метод QMainWindow по setWidget(). QMainWindow предназначен только для основного окна, но не мешает использовать его в качестве вспомогательного виджета.

2.QToolBar можно прикрепить к основному подокну методом addToolBar().

3. Подвиджет-главное окно, естественно, может иметь свой собственный QToolbar.

Если вы не хотите использовать QMainWindow в качестве виджета своего QDockWidget, вы можете прикрепить QToolBar в качестве дочернего виджета QDockWidget. Но панель инструментов не перемещается, как QMainWindow.

Я думаю, вы хотите добавить QToolBar и использовать его как QMainWindow. Поэтому я рекомендую вам установить QMainWindow в качестве виджета QDockWidget. И после этого прикрепить любой понравившийся вам виджет к главному окну.

person Haru    schedule 26.10.2018
comment
Знаете ли вы, есть ли способ остановить рост QDockWidget, когда элементы QToolButton динамически добавляются в QToolBar? - person Alan Spark; 20.11.2018
comment
@AlanSpark Одним словом, я не знаю. Я также пытался прикрепить кнопку инструмента к панели инструментов вспомогательного главного окна. Но этого не произошло. - person Haru; 21.11.2018
comment
В ворде может быть и лучше... извините. - person Haru; 22.11.2018
comment
Спасибо за ваши комментарии по этому поводу, я очень ценю это. - person Alan Spark; 22.11.2018