QStyle Tool Boxes Size Grip Rubber Band Dock Widgets 样式设计 (二十四)

Tool Boxes 样式:

QToolBox是一个容器,其中包含一组小部件。 每个小部件都有一个选项卡,并且一次显示其中一个。

工具箱会将其显示的组件(工具箱按钮和选定的小部件)放置在QVBoxLayout中。 工具箱的样式树如下所示:

 

 

 我们以Plastique样式显示工具箱的图像:

 

 

 

所有元素在Plastique以及其他Qt内置样式中均具有相同的边界矩形。

工具箱的样式选项是QStyleOptionToolBox。 它包含工具箱内容的文本和图标。 由QToolBox设置的唯一状态是State_Sunken,当用户用鼠标按下选项卡时设置。

QStyleOptionToolBox的其余成员是:

MemberContent
icon 工具箱选项卡上的图标
text 工具箱选项卡上的文本

 

Size Grip 样式:

大小夹点使用CT_SizeGrip计算其大小提示。 Qt当前未使用像素度量PM_SizeGripSize。 QSizeGrip的Plastique样式的元素树和图像如下:

 

 

 

 

 

 

我们在QMainWindow右下角显示尺寸夹点。
尺寸夹点样式选项QStyleOption SizeGrip具有一个成员,

QStyleOption的常见成员除外:

MemberContent
corner 一个Qt :: Corner值,它描述手柄位于窗口(或等效窗口)中的哪个角。

 

Rubber Band 样式:

QRubberBand的样式树由两个节点组成。

 

 

 

我们展示了一个Java样式窗口的图像,该图像在带有 rubber bands的QMdiArea中移动:

 

 

  rubber bands的样式选项是QStyleOptionRubberBand。 其成员是:

MemberContent
opaque 布尔值,如果橡皮筋必须以不透明的样式绘制(即颜色),则为true
shape 一个QRubberBand :: Shape枚举值,该值保留带的形状(矩形或直线)
Dock Widgets 样式:

 当停靠小部件布置其内容时,它会询问这些像素度量的样式:PM_DockWidgetSeparatorExtent,PM_DockWidgetTitleBarButtonMargin,PM_DockWidgetFrameWidth和PM_DockWidgetTitleMargin。

它还使用SE_DockWidgetCloseButton和SE_DockWidgetFloatButton计算浮动按钮和关闭按钮的边界矩形。

 

 

虚线表示发送方保留了箭头接收方的实例(即,它不是要绘制的样式元素)。 停靠小部件仅在从其主窗口(即,它是顶层窗口)分离时才绘制PE_frameDockWidget。

如果停靠,它将绘制指示器停靠窗口部件调整大小手柄。 我们以塑体样式显示停靠和浮动状态的停靠小部件:

 

 

styleOption 是 QStyleOptionDockWidget:

 

MemberContent
closeable 布尔值,用于确定是否可以关闭停靠窗口
floatable 布尔值,用于确定停靠窗口是否可以浮动(即与其所在的主窗口分离)
movable 布尔值,用于确定窗口是否可移动(即可以移动到其他停靠窗口小部件区域)
title 停靠窗口的标题文本

 

posted @ 2020-11-04 22:39  流浪侠客  阅读(243)  评论(0编辑  收藏  举报