Qt_控件总结

1.Layouts

布局控件,但是不用这个,直接将其它控件放入Frame或Widget容器中,配合ui界面上面的水平布局,垂直布局,栅格布局即可。

2.Spacers

添加弹簧,使布局更加美观。

3.Buttons

Push Button
Tool Button 可以进行图片显示的按钮(也可以文字和图片一起显示)
Radio Button 单选按钮,一般配合Group Box一起使用
Check Box 多选按钮

4.Item Views(Model-Based)

5.Item Widgets(Item-Based)

5.1 List Widget控件

可以输入一行一行的文本

5.2 Tree Widget控件

树控件,可以设置水平头,设置根目录和子目录等

5.3 Table Widget控件

//写在widget.cpp中
#include "widget.h"
#include "ui_widget.h"


Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);

    //设置列数
    ui->tableWidget->setColumnCount(3);
    //设置水平表头
    ui->tableWidget->setHorizontalHeaderLabels(QStringList()<< "姓名"<< "性别" << "年龄");
    //设置行数
    ui->tableWidget->setRowCount(5);

    //利用QStringList容器,存放内容,其内容直接拼接即可
    QStringList nameList;
    nameList << "刘备" << "关羽" << "张飞" << "花木兰" << "迪丽热巴";
    //QList(QString)等同于QStringList,但是可能缺少该类,所以用QStringList吧
    QStringList sexList;
    sexList << "男" << "男" << "男" << "女" << "女";
    QStringList ageList;
    ageList << "20" << "21" << "22" << "23" << "24";

    //利用for循环,为列填入内容
    for(int i = 0;i < 5;i++)
    {
        int col = 0;
        ui->tableWidget->setItem(i,col++,new QTableWidgetItem(nameList[i]));
        ui->tableWidget->setItem(i,col++,new QTableWidgetItem(sexList.at(i)));//.at(i)方式越界抛出异常,[i]方式越界直接挂了
        ui->tableWidget->setItem(i,col++,new QTableWidgetItem(ageList[i]));
    }
}

Widget::~Widget()
{
    delete ui;
}

在这里插入图片描述

6 Containers(容器)

Group Box 分组用的
Scroll Area 滚动条页面
Tool Box 类似于QQ分组那种
Tab Widget 标签页
Stacked Widget 栈控件,用来切换页面的
Frame Widget 用来对控件进行布局(水平布局,竖直布局,栅格布局等)
Dock Widget 浮动窗口

//写在widget.cpp中,,,,,使用栈控件stackedWidget进行页面切换
#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);

    //栈容器的使用,栈容器就是stackedWidget
    //scrollArea按钮
    connect(ui->btn_scrollArea,&QPushButton::clicked,[=](){
        ui->stackedWidget->setCurrentIndex(0);
    });

    //tabWidget按钮
    connect(ui->btn_tabWidget,&QPushButton::clicked,[=](){
        ui->stackedWidget->setCurrentIndex(1);
    });

    //toolBox按钮
    connect(ui->btn_toolBox,&QPushButton::clicked,[=](){
        ui->stackedWidget->setCurrentIndex(2);
    });



    //设置栈容器的默认值(即默认第一页显示什么)
    ui->stackedWidget->setCurrentIndex(0);
    }

Widget::~Widget()
{
    delete ui;
}

在这里插入图片描述
左侧选择框,即可进行页面的切换,右侧页面中有scrollArea(滚动条)toolBox(类似于QQ那种页面)tabWidget(标签页)三种。

7 Input Widgets(输入控件)

Combo Box 下拉框

//写在widget.cpp中
#include "widget.h"
#include "ui_widget.h"

Widget::Widget(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Widget)
{
    ui->setupUi(this);

    //找到控件名字,在代码中调用API控制它,干啥都信号和槽,很简便
    ui->comboBox->addItems(QStringList() << "花花" << "s" << "q");
    connect(ui->pushButton,&QPushButton::clicked,[=](){
        //ui->comboBox->setCurrentIndex(1);//所以说,切换页面的索引在右下角属性,而一般的索引就按0开始数
        ui->comboBox->setCurrentText("s");

    });
}

Widget::~Widget()
{
    delete ui;
}

Font Combo Box 字体下拉框
Line Edit 单行输入框,可以用右下角属性的echoMode修改其输入模式,改为Password密码模式
Text Edit 多行文本,记事本可以用这个(支持修改文字的字体,颜色,加粗等)
Plain Text Edit 和上面那个相似,但是是纯文本,不能字体,颜色,加粗等
Spin Box 数字的加减(计数器)
Double Spin Box 带有两位小数的数字加减,双精度
Time Edit 时间
Date Edit 日期
Date/Time Edit 又有时间又有日期
Horizontal Scroll Bar 水平滚动条
Vertical Scroll Bar 竖直滚动条
Horizontal Slider 水平滑动条(可以与Spin Box计数器一起用,控件的自定义封装)
Vertical Slider 竖直滑动条

8 Display Widgets(展示控件)

Label 标签(可以显示文字,也可以显示图片)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值