关闭

Qt的布局------部件布局

1277人阅读 评论(0) 收藏 举报

Qt提供了几个类使得部件布局更加简单。

·QGroupBox

·QButtonGroup

·QSplitter

·QWidgetStack


1、QGroupBox类

用于在部件周围绘制一个框架。可以在框架的上端添加一些描述信息。

QGroupBox *groupbox=new QGroupBox(this);
groupbox->setGoemetry(10,10,130,80);
group->setTitle("a Group Box");//设置分组框的标题

2、QButtonGroup类

与QGroupBox类非常相似,只是在布置按钮方面有特殊的功能。最常用的就是布置单选按钮。

将单选按钮插入到QButtonGroup类对象是,他们之间是自动互相排斥的。但是为了使其他按钮之间互斥,必要调用QButtonGroup::setExclusibe(true)函数。该类用法参见Qt布局-----按钮标签表的使用。(http://blog.csdn.net/sh191461679/article/details/46779425)


3、QSplitter类

该类对象可以使用户通过拖动拆分器提供的部件间的分界线控制子部件的大小。

QSplitter spliter=new QSplitter(this);//创建拆分器
spliter->setGoemetry(10,10,130,80);
QPushButton b1=new QPushButton ("button 1",spliter);
QPushButton b2=new QPushButton ("button 2",spliter);//将拆分器作为两个按钮的父对象,则在两个按钮之间插入了一个拆分器。
拖动两个按钮之间的拆分器可以改变按钮的大小。默认为水平拆分器,也建议创建垂直拆分器。通过调用QSplitter::setOrientation(Vertical)或者在构造函数中使用QSplitter(Vertical,this)。

使用QSplitter::setMinmumSize()函数来实现拆分器部件中的最小尺寸。

QSplitter::setResizeMode()实现定义部件的大小是否随分割器尺寸的改变而改变。

4、QWidgetStack类

当有多个部件,并且每次只希望显示一个部件时,就需要使用QWidgetStack类。

QWidgetStack *widgetstack=new QWidgetStack(this);
widgetstack->setGeometry(10,10,130,80);
widgetstack->addWidget(b1,1);//第一个参数为被添加部件指针,第二个参数为该部件在栈中的唯一整数标识号。标识号可以代替指针用作 
                              // raiseWidget()函数的参数
widgetstack->addWidget(b2,2);//将2个按钮添加的widgetstack中
widgetstack->raiseWidget(b1);//使b1按钮可见






0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:15810次
    • 积分:267
    • 等级:
    • 排名:千里之外
    • 原创:8篇
    • 转载:18篇
    • 译文:0篇
    • 评论:2条
    文章分类