QT--UI控件及布局

布局管理器 所谓 GUI 界面,归根结底,就是一堆组件的叠加。我们创建一个窗口,把按钮放上面,把图标放上面,这样就成了一个界面。在放置时,组件的位置尤其重要。我们必须要指定组件放在哪里,以便窗口能够按照我们需要的方式进行渲染。这就涉及到组件定位的机制。
【QT--UI控件及布局】Qt 提供了两种组件定位机制:绝对定位和布局定位。

  1. 绝对定位就是一种最原始的定位方法:给出这个组件的坐标和长宽值。
这样,Qt 就知道该把组件放在哪里以及如何设置组件的大小。但是这样做带来的一个问题是,如果用户改变了窗口大小,比如点击最大化按钮或者使用鼠标拖动窗口边缘,采用绝对定位的组件是不会有任何响应的。这也很自然,因为你并没有告诉 Qt,在窗口变化时,组件是否要更新自己以及如何更新。或者,还有更简单的方法:禁止用户改变窗口大小。但这总不是长远之计。
  1. 布局定位:你只要把组件放入某一种布局,布局由专门的布局管理器进行管理。当需要调整大小或者位置的时候,Qt 使用对应的布局管理器进行调整。
布局定位完美的解决了使用绝对定位的缺陷。
Qt 提供的布局中以下三种是我们最常用的:
  1. QHBoxLayout:按照水平方向从左到右布局;
  2. QVBoxLayout:按照竖直方向从上到下布局;
  3. QGridLayout:在一个网格中进行布局,类似于 HTML 的 table;


QTUI介绍:
QT--UI控件及布局
文章图片

QT--UI控件及布局
文章图片

弹簧的作用:例如添加一个按钮之后再水平布局会发生变化(被拉伸),弹簧的作用就是固定
QT--UI控件及布局
文章图片
QT--UI控件及布局
文章图片

添加弹簧后
QT--UI控件及布局
文章图片
QT--UI控件及布局
文章图片

按钮就字面意思,自己拖拽试试就知道了
QT--UI控件及布局
文章图片

下面是容器内的东西:
QT--UI控件及布局
文章图片

第一个:Group Box类似于win7的日历框
QT--UI控件及布局
文章图片

第三个:Tool Box类似于QQ的好友列表
第四个:Tab widget类似于
QT--UI控件及布局
文章图片


QT--UI控件及布局
文章图片


QT--UI控件及布局
文章图片




    推荐阅读