Qt QTabWidget详解
1.常用API
//添加
int addTab(QWidget *page, const QString &label)//设置tab位置
void setTabPosition(QTabWidget::TabPosition)//设置tab的形状
void setTabShape(QTabWidget::TabShape s)
2.例子
这里简单的添加两个tab
m_tabWidget = new QTabWidget(this);ui->horizontalLayout->addWidget(m_tabWidget);//add page1QFrame *page1 = new QFrame(m_tabWidget);QHBoxLayout *h1 = new QHBoxLayout(page1);QLabel *labelName = new QLabel(page1);labelName->setText("姓名: ");h1->addWidget(labelName);QLineEdit *le1 = new QLineEdit(page1);h1->addWidget(le1);//add page2QFrame *page2 = new QFrame(m_tabWidget);QHBoxLayout *h2 = new QHBoxLayout(page2);QLabel *labelName2 = new QLabel(page2);labelName2->setText("性别: ");h2->addWidget(labelName2);QComboBox *cb2 = new QComboBox(page2);cb2->addItems(QStringList()<<"男"<<"女");h2->addWidget(cb2);m_tabWidget->addTab(page1,"姓名");m_tabWidget->addTab(page2,"性别");
运行截图:
3.右键菜单
这里,只做了一个右键删除当前page页
//开启右键菜单m_tabWidget->setContextMenuPolicy(Qt::CustomContextMenu);m_menu = new QMenu(this);m_actionAdd = new QAction("添加",m_menu);connect(m_actionAdd,&QAction::triggered,this,&Form::slotAdd);m_actionDel = new QAction("删除",m_menu);connect(m_actionDel,&QAction::triggered,this,&Form::slotDel);m_menu->addAction(m_actionAdd);m_menu->addAction(m_actionDel);connect(m_tabWidget,&QTabWidget::customContextMenuRequested,this,&Form::slotPopMenu);void Form::slotPopMenu(const QPoint &pos){m_menu->exec(m_tabWidget->mapToGlobal(pos));}void Form::slotAdd(){//add page}void Form::slotDel(){m_tabWidget->removeTab(m_tabWidget->currentIndex());}
3.设置风格
以下style仅供参考
const QString styles = "\
QTabWidget::pane\
{\border-top: 2px solid #C2C7CB;\
}\
QTabWidget::tab-bar\
{\left: 5px;\
}\
QTabBar::tab\
{\background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,\stop: 0 #E1E1E1, stop: 0.4 #DDDDDD,\stop: 0.5 #D8D8D8, stop: 1.0 #D3D3D3);\border: 2px solid #C4C4C3;\border-bottom-color: #C2C7CB;\border-top-left-radius: 4px;\border-top-right-radius: 4px;\min-width: 8ex;\padding: 2px;\
}\
QTabBar::tab:selected, QTabBar::tab:hover\
{\background: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,\stop: 0 #fafafa, stop: 0.4 #f4f4f4,\stop: 0.5 #e7e7e7, stop: 1.0 #fafafa);\
}\
QTabBar::tab:selected\
{\border-color: #9B9B9B;\border-bottom-color: #C2C7CB;\
}\
QTabBar::tab:!selected\
{\margin-top: 2px;\
}";
源码:https://download.csdn.net/download/wzz953200463/13188035
Qt QTabWidget详解相关推荐
- Qt Phonon详解
Qt Phonon详解(转帖) 前言 Phonon严格来说其实非为Qt的library,Phonon原本就是KDE 4的开放原始码多媒体API,後来与Qt合并与开发,所以简单来说就是Qt使用Phono ...
- Qt QSqlQueryModel详解
1.功能概述 QSqlQueryModel是QSqlTableModel的父类.QSqlQueryModel封装了执行SELECT语句从数据库查询数据的功能,但是QSqlQueryModel只能作为只 ...
- Qt MetaObject 详解
这个系列的几篇文章通过阅读Qt帮助文档和相关的源代码来学习研究Qt meta-object所提供的功能,及其实现的方式. Qt meta-object系统基于三个方面: 1.QObject提供一个基类 ...
- 《Qt 数据库详解》博客系列文章
本文章原创于www.yafeilinux.com 转载请注明出处. 由于该系列文章图床都挂了,特下载原文博客的word版. 详细博客请点附件下载. 21-Qt数据库(一)简介 22-Qt数据库(二)添 ...
- Qt QTreeWidget 详解
Qt系列文章目录 文章目录 Qt系列文章目录 前言 主要API 示例 1.头文件: 2.实现文件 二.源码下载 前言 官方文档 QTreeWidget类是一个方便的类,它提供了一个标准tree小部件与 ...
- Qt QList详解
1.QList是一种表示链表的模板类. 2.QList是Qt的一种泛型容器类.它以链表方式存储一组值,并能对这组数据进行快速索引,还提供了快速插入和删除等操作. 3.QList.QLinkedList ...
- Qt MetaObject 详解之二:QMeta数据以及数据结构信息
如果一个类的声明中包含Q_OBJECT宏,那么qmake将为这个类生成 meta信息,这个信息在前一篇中所提到的moc文件中.这一篇通过解析这个一个示例moc文件来阐述这些meta信息的存储方式和格式 ...
- Qt QVector 详解:从底层原理到高级用法
目录标题 引言:QVector的重要性与简介 QVector的常用接口 QVector和std::Vector 迭代器:遍历QVector 中的元素(Iterators: Traversing Ele ...
- VS中使用Qt方法详解
在 Qt Creator 中可以使用 MSVC 编译工具对 Qt 项目进行编译.若有人比较习惯于使用 Visual Studio,或某些项目必须使用 Visual Studio,也可以在 Visual ...
最新文章
- 【卷积神经网络结构专题】一文详解AlexNet(附代码实现)
- ts快捷键 vscode_vscode怎么调试ts
- 第三讲 一阶线性ODE
- numpy中的clip函數的用法
- Linux(CentOS6.4)Solr4.8.1中文分词配置(IK分词)
- oracle 表空间 用户
- SVG图片以 https 链接的方式展示在页面上,并且可继承父类的颜色大小(类似阿里巴巴iconfont)
- BugkuCTF-Crypto题这不是md5
- ActiveMQ学习总结(4)——业界消息队列简介
- iis7 您无权使用所提供的凭据查看此目录或页面。_使用 Spring Cloud 和 Docker 轻松构建微服务架构!...
- clickjacking:X-frame-options header missing 漏洞解决办法
- 随机生成大小为100的范围是100-1000的不重复的数组
- 车间调度建模系列5|扩展析取图之工序间物流周转时间
- Windows下Mingw版本的FFMPEG源码编译
- PostgreSQL 怎么通过命令来恢复删除的数据
- 软考报名资格审核要多久?证明材料要哪些?
- ClickHouse在趣头条中的实战PPT
- undefined symbol问题的查找、定位与解决方法
- java杨辉三角奇数_杨辉三角中的奇数与偶数
- UE4 关卡蓝图实现开关门