qt的addWidget、setColumnStretch 等的使用方法
2016-04-25 14:01
288 查看
目前用得比较多的布局是 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的比例发生改变。
并且,在不进行其他尺寸设置的时候(最大值最小值固定什么的),控件也会以这个比例显示在界面上。
转载自http://blog.chinaunix.net/uid-693168-id-3254823.html
而控件可以按需要放到对应的格子,确保了控件的准确定位。
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的比例发生改变。
并且,在不进行其他尺寸设置的时候(最大值最小值固定什么的),控件也会以这个比例显示在界面上。
转载自http://blog.chinaunix.net/uid-693168-id-3254823.html
相关文章推荐
- Android布局的小窍门?
- Web布局连载——两栏固定布局(五)
- QT学习 第一章:基本对话框
- 使用Shiboken为C++和Qt库创建Python绑定
- Qt 5.6更新至RC版,最终版本近在咫尺
- 样式表CSS布局经验
- 在winform下实现左右布局多窗口界面的方法之续篇
- css网页布局中注意的几个问题小结
- DL.DT.DD实现左右的布局简单例子第1/2页
- 使用CSS框架布局的缺点和优点小结
- div+CSS网页布局的意义与副作用原因小结第1/2页
- 在winform下实现左右布局多窗口界面的方法
- Android编程之代码创建布局实例分析
- CSS顶级技巧大放送,div+css布局必知
- 用div实现像table一样的布局方法
- 精彩的Bootstrap案例分享 重点在注释!(选项卡、栅格布局)
- jQuery EasyUi实战教程之布局篇
- jQuery EasyUI 布局之动态添加tabs标签页
- jQuery Easyui实现左右布局
- Qt定时器和随机数详解