qt 容器组控件 Containers
控件名:
- Group Box:组合框,提供带有标题的组合框框架
- Scroll Area:滚动区域
- Tool Box:工具箱
- Tab Widget:标签小部件
- Stacked Widget:堆叠部件
- Frame:框架
- Widget:小部件
- MdiArea:MDI区域
- Dock Widget:停靠窗口部件。
- QAxWidget:封装Flash的ActiveX控件。
常用部件应用举例:
1.Group Box:组合框,提供带有标题的组合框框架
Qt中的GroupBox是一种控件容器,用于将相关控件分组并对其进行标记。 GroupBox通常用于分组相关的选项或设置,并为用户提供更好的可视化组织。
GroupBox通常包含一个标题,该标题指示该组中包含的内容。此外,它还可以具有边框和背景颜色,以帮助区分不同的组。
作用:
它通常用于将相关控件分组,并提供注释或标签以帮助用户理解其含义和作用。 Group Box可用于创建复杂的窗体布局,其中包含多个控件和组件。例如,可以在Group Box中放置一组单选按钮或复选框,并将它们与其他控件一起组合在一起以实现特定的功能。在Qt中,Group Box通常用于将用户界面元素按照逻辑或功能分类并组织起来,从而使用户能够更轻松地使用应用程序。
常用方法:
1. setTitle(const QString& title):设置Group Box的标题。
2. setAlignment(Qt::Alignment alignment):设置Group Box中的控件对齐方式。
3. setCheckable(bool checkable):设置Group Box是否可以选择。
4. isChecked() const:返回Group Box是否被选中。
5. setFlat(bool flat):设置Group Box是否带有边框。
6. isFlat() const:返回Group Box是否带有边框。
7. setEnabled(bool enabled):设置Group Box是否可用。
8. isEnabled() const:返回Group Box是否可用。
9. setSizePolicy(QSizePolicy::Policy horizontal, QSizePolicy::Policy vertical):设置Group Box的大小策略。
10. setMinimumSize(int minw, int minh):设置Group Box的最小大小。
11. setMaximumSize(int maxw, int maxh) :设置Group Box的最大大小。
12. layout() const:返回Group Box的布局。
13. setLayout(QLayout* layout):设置Group Box的布局。
14. setStyleSheet(const QString& styleSheet):设置Group Box的样式表。
15. sizeHint() const:返回Group Box的建议大小。
widget.h
#ifndef WIDGET_H
#define WIDGET_H
#include <QWidget>
class Widget : public QWidget
{
Q_OBJECT
public:
Widget(QWidget *parent = nullptr);
~Widget();
};
#endif // WIDGET_H
widget.cpp
#include "widget.h"
//添加头文件
#include <QGroupBox> //组合框 头文件
#include <QRadioButton> //单选按钮头文件
#include <QPushButton> //命令按钮头文件
#include <QCheckBox> //复选框头文件
#include <QVBoxLayout> //可以在水平方向和垂直反方进行排列的控头文件,QHBoxlayout/QVBoxlayout(水平/垂直)
#include <QGridLayout> //网格布局头文件
#include <QMenu> //菜单头文件
Widget::Widget(QWidget *parent)
: QWidget(parent)
{
//创建组合框1并实力化
QGroupBox *gb1 = new QGroupBox("单选按钮组1");
//创建单选按钮
QRadioButton *rb1= new QRadioButton("唱");
QRadioButton *rb2= new QRadioButton("跳");
QRadioButton *rb3= new QRadioButton("rap");
QRadioButton *rb4= new QRadioButton("篮球");
//创建垂直排列控件
QVBoxLayout *vbl1 = new QVBoxLayout;
//将单选按钮进行添加到垂直排列控件中进行垂直排列
vbl1->addWidget(rb1);
vbl1->addWidget(rb2);
vbl1->addWidget(rb3);
vbl1->addWidget(rb4);
//将被垂直排列的按钮放到组合框中
gb1->setLayout(vbl1);
//***********************************************************************
//创建组合框2并实力化
QGroupBox *gb2 = new QGroupBox("复选按钮组2");
//创建复选按钮
QCheckBox *cb1= new QCheckBox("唱");
QCheckBox *cb2= new QCheckBox("跳");
cb2->setTristate(true); //设置开启复选框的三种状态 不开启时 只有两种