Qt应用开发(基础篇)——选项卡窗口 QTabWidget

  一、前言      

         QTabWidget类继承于QWidget,是一个拥有选项卡的窗口部件。

        QTabWidget类有一个选项卡栏QTabBar和一个页面区域,用来显示和选项卡相关联的界面。用户通过点击选项卡或者自定义快捷方式(ALT+Key)切换页面。

二、QTabWidget类

1、count

        该属性表示当前选项卡的数量。

int count() const

2、currentIndex

        该属性表示当前选项卡的索引,下标从0开始,如果没有部件则返回-1。

int currentIndex() const
void setCurrentIndex(int index)

3、documentMode

        该属性表示选项卡栏是否设置为文档模式,默认禁用。这与macOS上的文档模式相同。启用时,不会呈现选项卡部件框架,即选项卡页面和其后的窗口等页面无框架区分看起来是一个整体。此模式对于页面需要显示文档类型的情况非常有用,因为节省了选项卡部件框架占用的部分空间。

bool documentMode() const
void setDocumentMode(bool set)
文档模式

默认模式

 4、elideMode

        该属性表示在没有足够的空间显示给定选项卡栏大小的时候如何省略内容的策略。

Qt::TextElideMode elideMode() const
void setElideMode(Qt::TextElideMode mode)
定义描述
Qt::ElideLeft省略号应该出现在文本的开头
Qt::ElideRight省略号应该出现在文本的末尾
Qt::ElideMiddle省略号应该出现在文本的中间
Qt::ElideNone省略号不应该出现在文本中。

Qt::ElideLeft

 6、iconSize

        该属性表示选项卡标签的图标最大尺寸,图标原尺寸太大会被压缩,太小不会被放大。

QSize iconSize() const
void setIconSize(const QSize &size)

7、movable

        该属性表示是否可以移动选项卡,默认选项卡是不可移动的。

bool isMovable() const
void setMovable(bool movable)

8、tabBarAutoHide

        该属性表示当选项卡栏包含少于2个选项卡时,选项卡栏是否自动隐藏,默认不隐藏。

bool tabBarAutoHide() const
void setTabBarAutoHide(bool enabled)

9、tabPosition

        该属性表示选项卡的位置,默认QTabWidget::North,在上方。

QTabWidget::TabPosition tabPosition() const
void setTabPosition(QTabWidget::TabPosition position)
定义描述
QTabWidget::North选项卡绘制在页面的上面
QTabWidget::South选项卡绘制在页面的下面
QTabWidget::West选项卡绘制在页面的左侧
QTabWidget::East选项卡绘制在页面的右侧
QTabWidget::South

10、tabShape

        该属性表示选项卡角的形状,默认QTabWidget::Rounded圆角。

QTabWidget::TabShape tabShape() const
void setTabShape(QTabWidget::TabShape s)
定义描述
QTabWidget::Rounded选项卡以圆形外观绘制
QTabWidget::Triangular选项卡以三角形外观绘制

QTabWidget::Triangular

 11、tabsClosable

        该属性表示选项卡栏是否应该在每个选项卡上放置关闭按钮。

bool tabsClosable() const
void setTabsClosable(bool closeable)

12、usesScrollButtons

        该属性表示,选项卡显示不下的时候是否使用按钮来滚动选项卡。

bool usesScrollButtons() const
void setUsesScrollButtons(bool useButtons)

13、公共函数

1)addTab

        新增选项卡、页面、标签和图标,返回选项卡的索引。

        如果标签包含“&”,那么将启用“ALT+Key”快捷方式,快速打开某选项卡。

        如果动态添加选项卡,需要先把setUpdatesEnabled设置为false,更新完成之后在设置为true,防止出现界面闪烁的情况。

int addTab(QWidget *page, const QString &label)
int addTab(QWidget *page, const QIcon &icon, const QString &label)
2)insertTab

        插入选项卡、页面、标签和图标,如果超出范围插入到尾部,返回选项卡的实际索引。其他注意事项参考addTab

 int insertTab(int index, QWidget *page, const QString &label)
 int insertTab(int index, QWidget *page, const QIcon &icon, const QString &label)
3)removeTab

        从选项卡中移除小部件,小部件本身不会被删除。

void removeTab(int index)
4)clear

        移除全部小部件。

void clear()
5)currentWidget

        返回当前页面显示的部件,如果选项卡为空,则返回nullptr。

QWidget *currentWidget() const
6)setCurrentWidget

        设置当前要显示的部件,传入的指针必须为有效值。

void setCurrentWidget(QWidget *widget)
7)setCornerWidget

        设置角部件,防止在选项卡旁边,基于选项卡的方向tabPosition赋值。

void setCornerWidget(QWidget *widget, Qt::Corner corner = Qt::TopRightCorner)
定义描述
Qt::TopLeftCorner矩形的左上角。
Qt::TopRightCorner矩形的右上角。
Qt::BottomLeftCorner矩形的左下角。
Qt::BottomRightCorner矩形的右下角。

Qt::TopLeftCorner
8)cornerWidget

        返回角部件方向。

QWidget *cornerWidget(Qt::Corner corner = Qt::TopRightCorner) const
9)indexOf

        查找某部件指针,返回选项卡索引,不存在则返回-1。

int indexOf(QWidget *w) const
10)widget

        查找某部件选项卡索引,返回小部件指针,不存在返回nullptr。

QWidget *widget(int index) const
11)setTabEnable

        设置某选项卡使能,设置为false将不可选中显示部件,如果全部选项都是false,那么将显示其中的一个。

void setTabEnabled(int index, bool enable)
setTabEnable(2,false)
12)isTabEnabled

        获取索引处index对应的选项使能。

bool isTabEnabled(int index) const
13)setTabIcon

        设置索引index对应的选项卡图标。

void setTabIcon(int index, const QIcon &icon)
14)tabIcon 

        获取索引index对应的图标。

QIcon tabIcon(int index) const
15)setTabText

        设置索引处index对应的选项卡文本。

void setTabText(int index, const QString &label)
16)tabText 

        获取索引处index对应的文本。

QString tabText(int index) const
 17)setTabToolTip

        设置索引处index对应的选项卡提示语。

void setTabToolTip(int index, const QString &label)
18)tabToolTip

        获取索引处index对应的提示语。

QString tabToolTip(int index) const
19)setTabVisible

        设置索引处index对应的选项卡是否隐藏。

void setTabVisible(int index, bool visible)
20)isTabVisible 

        获取索引处index对应的选项卡是否隐藏。

bool isTabVisible(int index) const
21)setTabWhatsThis 

        设置索引处index页面的“这是什么”帮助文本设置为文本。

void setTabWhatsThis(int index, const QString &text)
22)tabWhatsThis 

        获取索引index页面的帮助文本。

QString tabWhatsThis(int index) const

14、信号

1)currentChanged       

        页面切换触发。

void currentChanged(int index)
2)tabBarClicked

        点击选项栏触发。

void tabBarClicked(int index)
3)tabBarDoubleClicked

        双击选项栏触发。

void tabBarDoubleClicked(int index)
 4)tabCloseRequested

        选项栏关闭触发。

void tabCloseRequested(int index)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值