第15.36节 PyQt(Python+Qt)入门学习:containers容器类部件QFrame框架部件介绍

1、概述

容器部件就是能够在部件内放置其余部件的部件,在Qt Designer中可使用的容器部件有以下:
在这里插入图片描述html

容器中的Frame为一个矩形的框架对象,对应类QFrame,QFrame类是PyQt中带框架部件的全部类的基类,如菜单、进度条、Label标签等。QFrame类除了派生子类外,也能够直接用于建立没有任何内容的简单占位符框架,用于占用一部分空间。python

2、属性和方法

QFrame的方法和基本都是属性访问方法,基本没有单独的方法,所以本部分将属性和方法一块儿介绍。web

在Qt Designer中能够设置的Frame属性包括frameShape、framShadow、lineWidth、midLineWidth四个属性。除了这4个Designer中的属性外,QFrame另外还有frameRect和frameWidth这两个属性。框架

2.一、frameShape属性

frameShape属性对应类型为QFrame.Shape,该属性表示框架样式中的框架形状,有以下取值:
在这里插入图片描述
能够经过方法frameShape() 、setFrameShape(Shape)进行属性访问或设置。svg

2.二、framShadow属性

frameShadow属性对应类型为QFrame.Shadow,该属性表示框架提供三维效果的阴影类型,有以下取值:
在这里插入图片描述
能够经过frameShadow() 、setFrameShadow(Shadow)进行属性的访问。学习

2.三、frameRect 属性

frameRect 属性保存了Frame框架对象的几何范围矩形,当窗口调整大小时,frameRect 自动跟随调整。能够经过方法frameRect()和setFrameRect(QRect )来访问该属性。.net

2.四、frameWidth 属性

frameWidth 属性保留所绘制框架的宽度。
请注意,边框宽度取决于边框样式,而不单单是lineWidth和midLineWidth。例如,由NoFrame指定的样式的边框宽度始终为0,而样式面板的边框宽度等于线宽。3d

2.五、lineWidth和midLineWidth属性

ineWidth和midLineWidth属性用于控制框架线条和中线的宽度,与width、frameWidth这两个属性一块儿表示框架相关的宽度属性。width是整个QFrame的几何图形的宽度,其余三个用于定义一个Frame的边界的宽度。xml

midLineWidth指定框架中间额外线条的宽度,该线条使用第三种颜色得到特殊的三维效果。请注意,midLineWidth中间线只为凸起或凹陷的框、HLine和VLine框架绘制。htm

为了便于理解这几个属性,能够参考特定样式的一个图:
在这里插入图片描述
从图能够打折看出lineWidth、midLineWidth和frameWidth这三者对应Frame各部分的关系,但这个图只是一种特例,其实还有其余形式的图例,这里用本图仅简单说明这三者大概的位置和关系。

广告

老猿关于PyQt的付费专栏《使用PyQt开发图形界面Python应用》只须要9.9元,该部分与第十五章的内容基本对应,但一样内容在付费专栏上整体来讲更详细、案例更多。本节内容对应付费专栏的《第二十九章、containers容器类部件QFrame框架部件详解》。若是有兴趣也愿意支持老猿的读者,欢迎购买付费专栏。

老猿Python,跟老猿学Python!