首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

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

  • 23-09-22 12:43
  • 4459
  • 12652
blog.csdn.net

一、概述

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

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

二、属性和方法

QFrame的方法和基本都是属性访问方法,基本没有单独的方法,因此本部分将属性和方法一起介绍。

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

2.1、frameShape属性

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

2.2、framShadow属性

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

2.3、frameRect 属性

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

2.4、frameWidth 属性

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

2.5、lineWidth和midLineWidth属性

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

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

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

广告

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

老猿Python,跟老猿学Python!

  • 专栏:Python基础教程目录
  • 专栏:使用PyQt开发图形界面Python应用
  • 专栏:PyQt入门学习
  • 老猿Python博文目录
文章知识点与官方知识档案匹配,可进一步学习相关知识
Python入门技能树桌面应用开发PyQT333550 人正在系统学习中
老猿Python
微信公众号
专注Python相关语言、图像音视频处理、AI
注:本文转载自blog.csdn.net的LaoYuanPython的文章"https://blog.csdn.net/LaoYuanPython/article/details/105053793"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2024 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top