Qt 中垂直布局的 layout 是 QVBoxLayout 类,他的功能用发与 QHBoxLayout 完全一致,你只需将我们上一篇文章中的所有 QHBoxLayout 替换成 QVBoxLayout 就可以正常运行了。只不过一个是水平布局,一个是垂直布局。
本文讨论更多的是如何在一个 layout 中嵌套使用另外一个 layout,比如我们有这样一个需求,我们希望有三个按钮总在窗口的最左上角,无论窗口怎么拉伸或拖拽,按钮的位置都不动。那么我们就需要用到两个 layout 嵌套了。 大致的思路是在一个垂直的 layout 中嵌套一个水平的 layout,在水平的 layout 右侧设置一个弹簧,在垂直的 layout 下方设置一个弹簧,这样按钮就会一直在左上角了,表示图如下:
【实现代码】
1 | #include "cwidget.h" |