• 7132阅读
  • 3回复

QVBoxLayout 会动态改变子控件的大小 [复制链接]

上一主题 下一主题
离线kula
 
只看楼主 倒序阅读 楼主  发表于: 2010-02-20
现在我有一些子控件,一开始设置了大小,然后通过AddWidget接口添加到QVBoxLayout中,结果这些子控件大小被改变了.本来自控件大小已经精心设计好,但是全被变成一样大了.

有办法能设置子控件的大小吗?

我尝试使用itemAt接口 拿到对应的LayoutItem,通过setGeometry接口重新改变其大小.结果失败了.
离线午小夜

只看该作者 1楼 发表于: 2010-02-20
子控件的margin要設置好。如果QBoxLayout所要擺放的widget空間不夠,widget將會被裁減顯示。
[操作系统版本]  Windows XP;Linux Ubuntu;Linux Fedora;
[Qt SDK版本]    4.7.0
[SDK 发布日期]  2010.05
[IDE(集成开发环境)] QtCreator
个人网页:http://hi.baidu.com/午小夜
學歷:Royal Jalidon
离线kula
只看该作者 2楼 发表于: 2010-02-20
现在的问题 倒不是裁剪..而是 所有的控件都一样大.这样 我有些空间的内容多 ..结果很多内容就不显示出来了 .有些控件内容小,结果就留了很大一片白.很是头疼
离线午小夜

只看该作者 3楼 发表于: 2010-02-20
不建議使用setGeometry( ),它會重新出發Layout事件。
用setFixedSize( )。
只有QGridLayout才會像你說的那樣阿。。。
[操作系统版本]  Windows XP;Linux Ubuntu;Linux Fedora;
[Qt SDK版本]    4.7.0
[SDK 发布日期]  2010.05
[IDE(集成开发环境)] QtCreator
个人网页:http://hi.baidu.com/午小夜
學歷:Royal Jalidon
快速回复
限100 字节
 
上一个 下一个