即使存在顶部/底部底座,如何垂直扩展侧面底座小部件?

时间:2016-01-08 21:20:51

标签: qt user-interface

目前,如果我QDockWidget的顶部,底部和侧面都有QMainWindow,则会按照以下方式排列:

 _____________________
|                     |
|_____________________|
|   |             |   |
|   |             |   |
|   |             |   |
|___|_____________|___|
|                     |
|_____________________|

我希望其中一个侧码头更加垂直延伸,如下所示:

 _____________________
|                 |   | 
|_________________|   | 
|   |             |   | 
|   |             |   | 
|   |             |   | 
|___|_____________|   | 
|                 |   | 
|_________________|___|  

如何使用QDockWidget执行此操作?我已尝试查看Designer中的各种选项,多次查看QDockWidgetQMainWindow的所有文档,但未发现任何相关内容。我是否必须为此创建自己的布局,或者可能是子类QMainWindow

2 个答案:

答案 0 :(得分:3)

void QMainWindow::setCorner(Qt::Corner corner, Qt::DockWidgetArea area)

答案 1 :(得分:1)

阐述@ Tomas的答案。 Qt文档说:

  

void QMainWindow::setCorner ( Qt::Corner corner, Qt::DockWidgetArea area )

     

将给定的停靠窗口小部件area设置为占用指定的corner

这实际上是误导性的:该区域不会占据只是指定的角落。相反,这个角落属于区域,即你可以设置多个角落到一个区域,所以你可以得到例如右侧的侧面区域,右下角,或顶角,或两者兼有。