qtabwidget 高度_QStyle Tabs QTabWidget QTabBar样式设计 (十)
在Qt中,QTabBar使用样式绘制其选项卡。 选项卡存在于包含QTabBar的QTabWidget中,也可以作为单独的栏存在。
如果该栏不是选项卡小部件的一部分,它将绘制自己的基数。QTabBar布局选项卡,因此样式无法控制选项卡的放置。
但是,在布局其选项卡时,该栏会询问PM_TabBarTabHSpace和PM_TabBarTabVSpace的样式,该样式在选项卡栏选项卡标签的最小尺寸(图标和文本)上超出了宽度和高度。
样式还可以在布局前进一步影响选项卡的大小,因为选项卡栏要求提供CT_TabBarTab。杆的边界矩形是通过当它是微件(仍在考虑CT_TabBarTab)的一部分的标签窗口小部件决定。
当所有选项卡都不适合时,选项卡栏负责绘制出现在选项卡栏上的按钮。 它们的位置不受样式控制,但是按钮是QToolButtons,因此由样式绘制。
这是QTabWidget和QTabBar的样式结构:
虚线表示QTabWidget包含一个标签栏,但自身不绘制,QTabBar仅在不属于标签小部件的情况下绘制其基线,并且该标签栏保留两个工具按钮,当所有标签页都滚动时 不合适; 有关其元素树,请参见工具按钮。
另请注意,由于按钮是选项卡栏的子项,因此它们会在栏的后面绘制。 包围矩形的制表符通过PM_TabBarBaseOverlap与底部重叠。
这是Java风格的选项卡小部件:
在Java样式(以及Windows)中,标签栏的形状和标签的边界矩形与CE_TabBarTab相同。请注意,选项卡与选项卡小部件框架重叠。标签栏(如果已绘制)的底部是标签和框架重叠的区域。
选项卡的样式选项(QStyleOptionTab)包含图形选项卡的必要信息。该选项包含选项卡在选项卡栏中的位置,所选选项卡的位置,选项卡的形状,文本和图标。在Qt 4.1之后,该选项应转换为QStyleOptionTabV2,其中还包含图标大小。
由于Java样式选项卡不重叠,因此我们还以Windows样式显示了选项卡小部件的图像。请注意,如果希望选项卡水平重叠,请在CE_TabBarTabShape中绘制选项卡时执行此操作。
选项卡边界矩形将不会被选项卡栏更改。这些选项卡以北选项卡栏形状从左到右绘制,以东部选项卡栏形状从上到下,等等。
最后绘制所选的选项卡,这样很容易将其绘制在其他选项卡上(如果是更大)。
标签栏可以在其标签上设置的状态表如下:
StateState Set When
State_Sunken
用鼠标按下该选项卡。
State_Selected
如果是当前选项卡。
State_HasFocus
标签栏具有焦点,并且已选择标签
请注意,即使选项卡栏未被禁用,单个选项卡也可能被禁用。 如果选项卡栏处于活动状态,则该选项卡将处于活动状态。
以下是QStyleOptionTabV2的成员表:
MemberContent
cornerWidgets
是CornerWidget枚举的标志,指示标签栏是否以及具有哪个角小部件。
icon
选项卡的QIcon
iconSize
图标的QSize
position
一个TabPosition枚举值,指示相对于其他选项卡,该选项卡在栏中的位置。
row
保存选项卡所在的行
selectedPosition
SelectedPosition枚举的值,它指示选定的选项卡与该选项卡相邻还是该选项卡。
shape
QTabBar :: Shape枚举的值指示该选项卡是圆角还是三角形以及选项卡的方向。
text
标签文字
选项卡小部件的框架使用QStyleOptionTabWidgetFrame作为样式选项。 我们在这里列出其成员。 除了通用标志外,它没有设置状态。
Membercontent
leftCornerWidgetSize
左上角小部件的QSize(如果有)。
rightCornerWidgetSize
右上角小部件的QSize(如果有)。
lineWidth
保持与绘制面板的线。
midLineWith
该值当前始终为0。
shape
标签栏上标签的形状。
tabBarSize
标签栏的QSize。
qtabwidget 高度_QStyle Tabs QTabWidget QTabBar样式设计 (十)相关推荐
- 【Material Design视觉设计语言】应用样式设计
作者:郭孝星 微博:郭孝星的新浪微博 邮箱:allenwells@163.com 博客:http://blog.csdn.net/allenwells Github:https://github.co ...
- HTML5 混合APP开发学习笔记(三)——CSS样式设计
CSS样式设计 CSS高级特性 继承性 书写CSS样式时,子标签会自动继承父标签的某些样式,恰当地使用继承这个特性可以简化代码,降低CSS样式的复杂性 以下CSS样式不能被继承: 边框属性 边距和填充 ...
- React 界面样式设计
当我们完成程序的基本功能后,不对程序界面进行打磨妆点,那么过于素颜的界面,对用户是产生不了吸引力的.对于网页应用而言,用来美化界面的技术,一直都是CSS,CSS是一种好技术,它能将界面的美化和程序的功 ...
- EduCoder-Web程序设计基础-html5—二维码名片制作-(第1关:二维码名片页面的结构设计)(第2关:二维码名片页面的样式设计)
目录 第1关:二维码名片页面的结构设计 代码示例 第2关:二维码名片页面的样式设计 代码示例 第1关:二维码名片页面的结构设计 任务描述 本关任务:设置一个二维码名片页面的主体结构. 相关知识 为了完 ...
- 设计网页字体css,CSS样式设计网页字体与用户体验
CSS样式设计网页字体与用户体验 互联网 发布时间:2009-04-02 19:36:06 作者:佚名 我要评论 网页制作Webjx文章简介:在设计网页时,没有比页面的外观更重要的了.所以 ...
- bootstrap思想总结_bootstrap学习心得总结-css样式设计分享
由于项目需要,所以打算好好学习下bootstrap框架,之前了解一点,框架总体不难,但涉及到的东西还是很多,想要熟练掌握它,还是要多练练. 一:bootstrap是什么? bs是什么? 即前端页面搭建 ...
- Vue中使用纯CSS样式设计Table横向竖向滚动自定义个别列固定
在Vue中CSS样式来设计Table横向竖向滚动自定义个别列表头固定 前言 一.表格数据 二.样式设计 1.表格与外层DIV样式 2.固定表头的样式(重要) 总结 前言 大家一定使用过很多UI,UI都 ...
- 谷歌地图接口Google Maps APIs中地图样式设计配置调整与JSON或URL导出
本文介绍在谷歌地图API(Google Maps APIs)中,设计地图样式并将设计好的样式通过JSON或URL导出的方法. 首先,进入Google Maps APIs网站:https://m ...
- 【软工项目组】第十五次会议(样式设计3.0)
第十五次会议 时间:2017-12-30 19:00 至 20:30 地点:第三教学楼A楼休息区 集体写代码与答疑讨论的时间. 样式设计3.0: 课程评论整体界面 修改自己的评论信息 所有评论展示区 ...
最新文章
- windows AD/DNS服务器搭建
- VMware Server 2.0简单学习!
- C#开发学习——web服务器端控件
- 目标检测之行人检测(Pedestrian Detection)基于hog(梯度方向直方图)--- 梯度直方图特征行人检测、人流检测2...
- Linux网络模块全局变量,()不是Linux系统的特色.
- 信息学奥赛C++语言: 素数回文数的个数
- 前端 javascript 变量
- 网站设计中面包屑导航条的使用和设计
- 初中计算机考试软件word,初中信息技术中考系统中操作题word部分.doc
- 计算机网络技术毕业生实习报告_计算机网络专业毕业实习报告3000字
- 2020年CSP-J2 CSP-S2 复赛题解
- yy号,你以为你是QQ号么?
- 最全面计算机英语单词列表(三)
- 程序员的我是如何抢票的(Python)
- python-matplotlib制作图表与中文正常显示
- ITIL Expert
- Cis-Glyoxal-Cyclam ,CAS: 74199-16-9,CIS-十氢-1H,6H-3A,5A,8A,10A-四氮杂芘
- 交通咨询系统(最短路径问题)
- implicitlyWait和explicitlyWait的秘密
- 半导体未来浪潮(深度好文)