Qt4.8.7
本文档基于Qt4编写,Qt5中是否成立未测试。
工作过程中需要使用可拖拽调节的布局。因为接触Qt不久,网上查了很多资料才找到QSplitter类。但发现初始比例总不是按照自己设置的显示。尝试:
void setStretchFactor ( int index, int stretch )
偶尔正确显示,大部分情况错误比例,而且使用此函数设置后,QWidget在hide() show()之后比例失调。根据网上教程,尝试:
void QWidget::setSizePolicy ( QSizePolicy )
说实话,网上很多setStretchFactor ( int index, int stretch ) 失效的帖子都转载的这个办法。但我尝试之后还是失败了,设置之后根本没反应。(因为刚入门不久,对Qt的一些逻辑的理解确实不到位,也希望大神指点)。
最终,通过查阅QSplitter的函数说明,使用
void setSizes ( const QList<int> & list )
达到目的。
下面把设置过程写下,给广大新手参考。
QSplitter
Inherits: QFrame.
#include <QSplitter>
#include <QList>
涉及的成员函数
- void

在Qt4.8.7中使用QSplitter实现可拖拽调节的布局时,初始比例设置可能遇到问题。QSplitter的setStretchFactor方法并不总是有效。正确的解决方案是使用setSizes(const QList<int> &sizes)函数,通过指定List中每个Widget的高度或宽度值,来设定初始比例。例如,设置list为[1000, 2000, 3000],即使实际分配的高度有限,Widgets也会按照1:2:3的比例显示。"
121539777,7299338,解决[RMI TCP Connection]-Apache Tomcat报错问题,"['apache', 'tomcat', 'jdbc', 'jar', 'IDEA']
最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



