Qt应用开发(基础篇)——框架类 QFrame

 一、前言

         QFrame继承于QWidget,被QLCDNumber、QToolBox、QLabel、QListView等部件继承,是一个拥有矩形框架的基类。

Qt应用开发(基础篇)——框架类 QFrame_第1张图片

        QFrame可以直接创建成一个没有内容的的矩形框架,框架的样式由边框厚度(lineWidth)、框架形状(QFrame::Shape)和阴影样式(QFrame::Shadow)决定下图是官网给出的组合样式图

Qt应用开发(基础篇)——框架类 QFrame_第2张图片

二、QFrame类

1、frameRect

        该属性表示框架的尺寸,设置框架的尺寸不会对里面的内容做更新,内部小部件改变大小的时候,会自动调整框架的尺寸。

QRect frameRect() const            //获取尺寸
void setFrameRect(const QRect &)   //设置尺寸

2、frameShadow

        该属性表示框架的阴影,效果参阅前文框架图片。

QFrame::Shadow frameShadow() const       //获取阴影样式 
void setFrameShadow(QFrame::Shadow)      //设置阴影样式
名称 描述
QFrame::Plain 0x0010 框架和内容与周围环境齐平,没有任何3D效果
QFrame::Raised 0x0020 框架和内容显得凸起;使用当前色组的明暗颜色绘制3D凸起线
QFrame::Sunken 0x0030 框架和内容显得下沉;使用当前色组的明暗颜色绘制3D下沉线

 3、frameShape

        该属性标识框架的形状,效果参阅前文框架图片。

QFrame::Shape frameShape() const
void setFrameShape(QFrame::Shape)
名称 描述
QFrame::NoFrame 0 不绘制任何东西
QFrame::Box 0x0001 绘制一个箱体环绕边框
QFrame::Panel 0x0002 绘制一个面板,使内容看起来凸起或凹陷
QFrame::StyledPanel 0x0006 绘制一个矩形面板,其外观取决于当前的GUI样式。它可以凸起,也可以凹陷。
QFrame::HLine 0x0004 绘制一条水平线用作分隔符,该水平线不包含任何内容
QFrame::VLine 0x0005 绘制一条垂直线用作分隔符,该垂直线不包含任何内容
QFrame::WinPanel 0x0003 绘制一个矩形面板,可以像Windows 2000中的面板一样凸起或凹陷。指定此形状将线宽设置为2像素。WinPanel提供了兼容性。对于GUI样式独立,建议使用StyledPanel。

4、frameWidth

        该属性表示框架的边框宽度,该属性取决于边框的样式,比如NoFrame指定的样式的宽度总是为0,而Panel样式的宽度等于线宽。

int frameWidth() const    //获取宽度

5、lineWidth

        该属性表示线宽,效果参阅前文框架图片。

int lineWidth() const    //获取线宽
void setLineWidth(int)   //设置线宽

6、midLineWidth

       该属性表示内线宽,效果参阅前文框架图片。

int midLineWidth() const    //获取内线宽
void setMidLineWidth(int)   //设置内线宽

7、frameShadow

        组合获取和设置frameShadow和frameShape样式。

int frameStyle() const            //获取样式
void setFrameStyle(int style)     //设置样式

        实例:

QFrame penColorFrame = new QFrame;
penColorFrame->setFrameStyle(QFrame::Panel | QFrame::Sunken)

你可能感兴趣的:(QT应用开发,qt,PC,c++,上位机)