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

 一、前言

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

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

二、QFrame类

1、frameRect

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

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

2、frameShadow

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

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

 3、frameShape

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

QFrame::Shape frameShape() const
void setFrameShape(QFrame::Shape)
名称描述
QFrame::NoFrame0不绘制任何东西
QFrame::Box0x0001绘制一个箱体环绕边框
QFrame::Panel0x0002绘制一个面板,使内容看起来凸起或凹陷
QFrame::StyledPanel0x0006绘制一个矩形面板,其外观取决于当前的GUI样式。它可以凸起,也可以凹陷。
QFrame::HLine0x0004绘制一条水平线用作分隔符,该水平线不包含任何内容
QFrame::VLine0x0005绘制一条垂直线用作分隔符,该垂直线不包含任何内容
QFrame::WinPanel0x0003绘制一个矩形面板,可以像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)     //设置样式

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/29580.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

浏览器多管闲事之跨域

年少时的梦想就是买一台小霸王游戏机 当时的宣传语就是小霸王其乐无穷~。 大些了,攒够了零花钱,在家长的带领下终于买到了 那一刻我感觉就是最幸福的人 风都是甜的! 哪成想... 刚到家就被家长扣下了 “”禁止未成年人玩游戏机 (问过卖家了&a…

Transformer理论学习

Transformer出自于论文《attention is all you need》。 一些主流的序列模型主要依赖于复杂的循环结构或者CNN,这里面包含了编解码器等。而Transformer主要的结构是基于注意力机制,而且是用多头注意力机制去替换网络中的循环或者CNN(换言之就是transfor…

CD4029计数器实测仿真及BCD转七段码

前面的博文中,我们介绍过CD40110(这是一个常见的直接接7段数码管的计数器,我们这里介绍一款新的计数器CD4029,这也是很常见的计数器,不同的是后者可以输出BCD编码。 文章目录 一、总体效果二、CD4029的管脚和功能介绍1、芯片功能简…

使用 PowerShell 将 Excel 中的每个工作表单独另存为独立的文件

导语:在日常工作中,我们经常需要处理 Excel 文件。本文介绍了如何使用 PowerShell 脚本将一个 Excel 文件中的每个工作表单独另存为独立的 Excel 文件,以提高工作效率。 1. 准备工作 在开始之前,请确保已经安装了 Microsoft Exc…

【毕业项目】自主设计HTTP

博客介绍:运用之前学过的各种知识 自己独立做出一个HTTP服务器 自主设计WEB服务器 背景目标描述技术特点项目定位开发环境WWW介绍 网络协议栈介绍网络协议栈整体网络协议栈细节与http相关的重要协议 HTTP背景知识补充特点uri & url & urn网址url HTTP请求和…

MySQL主从复制基于二进制日志的高可用架构指南

前言 在现代数据库架构中,MySQL主从复制技术扮演着重要角色。它不仅可以提升数据库性能和可扩展性,还赋予系统卓越的高可用性和灾难恢复能力。本文将深入剖析MySQL主从复制的内部机制,同时通过一个实际案例,展示其在实际场景中的…

【计算机视觉】MoCo v2 讲解

在阅读本篇之前建议先学习: 【计算机视觉】MoCo 讲解 【计算机视觉】SimCLR 讲解 MoCo v2 论文信息 标题:Improved Baselines with Momentum Contrastive Learning 作者:Xinlei Chen 期刊: 发布时间与更新时间:2020.03.09 主题:计算机视觉、对比学习 arXiv:[2003.04297]…

Pr2022安装插件beat edit安装之后无法加载音乐怎么办?

你运行设置不对,安装好后试试管理员权限运行。 安装好插件后点击上方的窗口,然后再在里面找到扩展,继续点开里面有个BeatEdit,就是插件本身,点开。先选择一个加载音乐的选项,载入音乐先。这个时候可以按下…

如何对项目中的图片进行优化

优化步骤方案 不用图片。很多时候会使用到很多修饰类图片,其实这类修饰图片 完全可以用 CSS 去代替。对于移动端来说,屏幕宽度就那么点,完全没有必要去加载原图浪 费带宽。一般图片都用 CDN 加载,可以计算出适配屏幕的宽度&#…

CSS 滚动条

一、滚动条样式属性 ::-webkit-scrollbar {width: 6px; /* 竖向滚动条宽度 */height: 6px; /* 横向滚动条高度 */ }::-webkit-scrollbar-thumb {border-radius: 10px; /* 滚动条样式 */-webkit-box-shadow: inset 0 0 3px red; /* 内阴影 */background-color: blue; /* 滚动条…

Redhat Linux 安装MySQL安装手册

Redhat安装MySQL安装手册 1 下载2 上传服务器、解压并安装3 安装安装过程1:MySQL-shared-5.6.51-1.el7.x86_64.rpm安装过程2:MySQL-shared-compat-5.6.51-1.el7.x86_64.rpm安装过程3:MySQL-server-5.6.51-1.el7.x86_64.rpm安装过程4&#xff…

Flutter运行app时向logcat输出当前打开的界面路径且点击可跳转

当一个项目大了目录文件多了,我们往往会为了找到一个文件花费大量的时间和精力,为了快捷方便的调试我们的项目,我们往往需要在打开app运行的时候需要知道当前打开的界面的文件在哪儿,我们这个代码就能快捷的知道我们app正在打开的…

spring-cache框架使用笔记

spring-cache框架使用笔记 什么是spring-cache框架 spring-cache是spring框架中的一个缓存抽象层, 它提供了一种简便的方式来集成不同的底层缓存实现, 如内存缓存(concurrentMap/ehcache/caffeine)/分布式缓存(redis/couchbase)等 它简化了在app中使用…

现代C++中的从头开始深度学习【1/8】:基础知识

一、说明 提及机器学习框架与研究和工业的相关性。现在很少有项目不使用Google TensorFlow或Meta PyTorch,在于它们的可扩展性和灵活性。也就是说,花时间从头开始编码机器学习算法似乎违反直觉,即没有任何基本框架。然而,事实并非…

Unity制作护盾——2、力场冲击波护盾

Unity制作力场护盾 大家好,我是阿赵。   继续做护盾,这一期做一个力场冲击波护盾。 一、效果展示 主要的效果并不是这个球,而是护盾在被攻击的时候,会出现一个扩散的冲击波。比如上图在右边出现了冲击波 如果在左边被攻击&am…

C/C++面试总结

一、关键字static、const、extern、volatile作用 1、const 1.修饰常量 用const修饰的变量是不可变的,修饰后的变量只能使用,不能修改。 2.修饰指针 如果const位于*的左侧,eg:const int* a,则const就是用来修饰指针…

Java基础八 - HTTP相关/Cookie/Session/网络攻击

一、 反射/序列化/拷贝 1. 反射 //反射主要是指程序可以访问、检测和修改它本身状态或行为的一种能力 //在Yaml数据驱动自动化框架比较适用,能获取到当前的类名及方法名 import java.lang.reflect.*;public class ReflectionExample {public static void main(Str…

KingBaseDB对POINT类型和PATH类型的应用

前言 由于业务需要对坐标信息进行存储,包括中心点和区域坐标数组,然后就开始考虑数据的存储问题,刚开始想着用最简单的两个字段分别存储经度纬度,这样发现关联查询表可能会比较多,有点麻烦。之后想起来kingbase好像有…

linux中彻底卸载jenkins

要彻底卸载 Jenkins,你需要删除与 Jenkins 相关的文件、目录和配置。以下是一些步骤: 1. **停止 Jenkins 服务:** 在卸载 Jenkins 之前,首先停止 Jenkins 服务。使用以下命令停止 Jenkins 服务: sudo systemctl stop jenki…

Mr. Cappuccino的第56杯咖啡——Mybatis拦截器

Mybatis拦截器 概述应用场景项目结构实现分页查询其它拦截器的使用 概述 Mybatis允许使用者在映射语句执行过程中的某一些指定的节点进行拦截调用,通过织入拦截器,在不同节点修改一些执行过程中的关键属性,从而影响SQL的生成、执行和返回结果…