pyqt5-QFrame边框样式
继承 QObject-->QWidget-->QFrame
是一个基类, 可以选择直接使用,主要是用来控制一些边框样式:例如:凸起、凹下、阴影、线宽
QFrame对象效果对照图:
import sys from PyQt5.QtWidgets import QApplication, QWidget,QFrame from PyQt5.QtCore import QRect class Demo(QWidget): def __init__(self): super().__init__() self.resize(300,300) frame=QFrame(self) #创建实例 frame.resize(100,100) frame.move(100,50) #注意:此时是看不到控件的 frame.setStyleSheet('background-color:red;') #设置背景色 frame.setFrameShape(QFrame.Box) #设置框架形状 #QFrame.NoFrame QFrame什么都没画 #QFrame.Box=1 QFrame围绕其内容绘制一个框 #QFrame.Panel=2 QFrame绘制一个面板,使内容显得凸起或凹陷 #QFrame.HLine QFrame绘制一条没有框架的水平线(用作分隔符) #QFrame.VLine QFrame绘制一条无框架的垂直线(用作分隔符) #QFrame.StyledPanel 绘制一个矩形面板,其外观取决于当前的GUI样式。它可以升起或凹陷 #QFrame.WinPanel 绘制一个可以像Windows 2000中那样凸起或凹陷的矩形面板。指定此形状可将线宽设置为2像素。WinPanel是为了兼容性而提供的。对于GUI样式独立性,建议使用StyledPanel。 s=frame.frameShape() #返回框架形状,一个整数值 print(s) frame.setFrameShadow(QFrame.Sunken) #设置框架阴影 #QFrame.Plain 框架和内容与周围环境呈现水平;(没有任何3D效果) #QFrame.Raised=32 框架和内容出现; 使用当前颜色组的浅色和深色绘制3D凸起线 #QFrame.Sunken=48 框架和内容出现凹陷; 使用当前颜色组的浅色和深色绘制3D凹陷线 s=frame.frameShadow() #返回阴影值 print(s) frame.setLineWidth(6) #设置外线宽度 s=frame.lineWidth() #返回外线宽度 print(s) frame.setMidLineWidth(12) #设置中线宽度 s=frame.midLineWidth() #返回中线宽度 s=frame.frameWidth() #返回总宽度.注意:内线宽度=外线宽度 print(s) frame.setFrameStyle(QFrame.Box | QFrame.Sunken) #框架样式=框架形状+框架阴影 frame.setFrameRect(QRect(20,20,60,60)) #框架矩形 s=frame.frameRect() #返回框架矩形 print(s) if __name__ == '__main__': app = QApplication(sys.argv) demo = Demo() demo.show() sys.exit(app.exec_())
天子骄龙
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)