站内搜索:
首页 >> 前端 >> 内容
qtQGridLayout网格布局addWidget函数与拉伸因子使用介绍

时间:2018/3/20 11:07:13

目前用得比较多的布局是 QGridLayout,它将界面划分为若干个网格,

而控件可以按需要放到对应的格子,确保了控件的准确定位。

m_layout->addWidget(m_calender,0,0); ? //calendar放在第一行第一列

m_layout->addWidget(m_tblList,0,1); ? //table放在第一行第二列

但是我们还需要控件在窗体缩放的时候也按比例缩放,

这个时候就需要用到拉伸因子这个东东。拉伸因子决定了窗体尺寸发生改变时,控件发生改变的比例。

每个布局都有相应的拉伸因子设置函数。以下是QGridLayout里面的设置函数

void setColumnStretch ( int column, int stretch );

void setRowStretch ( int row, int stretch );

具体使用如下

m_layout->setColumnStretch(0,3);

m_layout->setColumnStretch(1,1);

这样在窗体反正改变的时候,m_calender与m_tblList会按3:1的比例发生改变。

并且,在不进行其他尺寸设置的时候(最大值最小值固定什么的),控件也会以这个比例显示在界面上。

  • 上一篇:知乎上解决forclick问题的方法:闭包,同步异步操作,变量作用域
  • 下一篇:git如何上传项目到分支?
  • 返回顶部