自学内容网 自学内容网

Qt常用基础控件总结—带边框的部件(QFrame和QLabel)

带边框的部件

框架控件QFrame类

QFrame类介绍

QFrame 类是带有边框的部件的基类,带边框部件的特点是有一个明显的边框,QFrame类就是用来实现边框的不同效果的(把这种效果称为边框样式),所有继承自 QFrame 的子类都可以使用 QFrame 类实现的效果。

部件通常是矩形的(其他形状的原理类似),由下图可见,矩形的边界线有粗有细,而且还可以有其他形式,而 QFrame 类主要就是描述的类似于下图矩形的边界线的形式(或样式),只不过在 Qt 中把这种矩形的边界线称为部件的边框。
在这里插入图片描述
对边框线条使用不同的颜色、粗细度、明暗度等可以使整个部件在视觉上呈现出不同的效果(见下图),比如使部件的边框看起来相对于内容是向上凸或向下凹的,或者使内容看起来高于或底于边框。
在这里插入图片描述
从以上讲解可知,边框可以使部件的边框或内容看起来是向上凸或向下凹的,Qt 从以下几方面对其进行描述:

  • 使用“边框形状(frame shape)”来描述向上凸或向下凹的是边框还是内容,Qt 把此处的边框称为 Box,把此处的内容称为 Panel。
  • 使用“阴影样式(shadow style)”来描述是向上凸、向下凹或是平面。Qt 使用 Raised(提升)表示向上凸,使用 Sunken 表示向下凹,使用 Plain 表示平面。
  • 线宽(lineWidth):即边框线的宽度。(见下图)
  • 中线宽(midLimeWidth):是指边框中间的额外线的宽度(见下图),它使用第三种颜色以获得特殊的 3D 效果,中线仅用于 Raised(提升)或 Sunken(下沉)的 Box、HLine 和VLine 边框。
  • 边框宽(frameWidth):指的边框的总宽度(见下图),具体取决于使用的样式。
    在这里插入图片描述
    QFrame 类中的枚举如下:
    在这里插入图片描述
    QFrame 的边框样式主要由该类的枚举和属性决定,下图为 QFrame 的边框样式的效果:
    在这里插入图片描述

QFrame 类中的属性函数

1)frameShadow:Shadow
访问函数:Shadow frameShadow() const; void setFrameShadow(Shadow);
此属性描述了边框的阴影效果(Shadow),即向上凸、向下凹还是平面。

2)frameShape:Shape 访问函数:Shape frameShape() const; void setFrameShape(Shape);
此属性描述了边框的形状(Shape),即 Box 还是 Panel(面板)或线。

3)frameWidth:const int 访问函数:int frameWidth() const;
此属性描述了边框的总宽度,具体取决于使用的样式。

4)lineWidth:int 访问函数:int lineWidth() const; void setLineWidth (int);


原文地址:https://blog.csdn.net/qq_37464701/article/details/140297511

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!