Qt常用控件之标签页控件QTabWidget
目录
Qt常用控件之标签页控件QTabWidget
标签页控件QTabWidget
QTabWidget
是一个标签页控件,可以将控件拖入标签页中,通过切换标签页切换不同控件的显示。
代码创建的控件的父控件不是
QTabWidget而是标签页tab或tab_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");
}