目录

Qt常用控件之标签页控件QTabWidget

Qt常用控件之标签页控件QTabWidget

标签页控件QTabWidget

QTabWidget 是一个标签页控件,可以将控件拖入标签页中,通过切换标签页切换不同控件的显示。

代码创建的控件的父控件不是 QTabWidget 而是标签页 tabtab_2 等 ,但 ui 创建的控件依然是通过 ui-> 找到。

1. QTabWidget属性

属性说明
tabPosition标签所在位置。 North 上方 South 下方 West 左侧 East 右侧
currentIndex当前选中了第几个标签页(从 0 开始)。
currentTabText当前选中的标签页。
currentTabName当前选中的标签页的名字。
currentTabIcon当前选中的标签页的图标。
currentTabToolTip当前选中的标签页的提示信息。
tabsCloseable标签页是否可以关闭。
movable标签页是否可以移动。

2. QTabWidget信号

信号说明
currentChanged(int)在标签页发生切换时触发,参数为被点击的选项卡编号。
tabBarClicked(int)在点击选项卡的标签条时触发,参数为被点击的选项卡编号。
tabBarDoubleClicked(int)在双击选项卡的标签条时触发,参数为被点击的选项卡编号。
tabCloseRequest(int)在选项卡关闭时触发,参数为被关闭的选项卡编号。

3. 使用QTabWidget制作一个多标签页窗口

QTabWidget 主要用途是实现让开发者在不新建窗口的前提下,高效实现多标签页之间控件的切换。

#include "widget.h"
#include "ui_widget.h"

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

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


void Widget::on_pushButton_clicked()
{
    ui->label_2->setText("点击了Tab 2的button");
}

void Widget::on_pushButton_2_clicked()
{
    ui->label->setText("点击了Tab 1的button");
}

https://i-blog.csdnimg.cn/img_convert/fffa3fe7f42a24d76c0654441a92e9f0.png