Qt 边框border - qss样式

border属性

        实际上,border并不是一个单独的属性,在Qt样式表中,它通常指的是一系列与边框相关的属性的组合然而,你也可以在一条样式规则中一次性设置所有这些值,如下所示:

QPushButton { border: 2px solid #007BFF; /* 四个边框宽度均为2px,样式为实线,颜色为蓝色 */ 
}

border-width

        border-width属性用于设置边框的宽度。

1)这个属性可以接受一到四个值,分别对应边框的上、右、下、左(顺时针方向)的宽度当指定不同数量的值时,它们的含义如下:

  • border-width: 2px; 这表示所有四个边框(上、右、下、左)的宽度都被设置为2px
  • border-width: 2px 7px; 在这种情况下,第一个值2px应用于上下边框(即顶部和底部边框的宽度都是2px),而第二个值7px应用于左右边框(即左侧和右侧边框的宽度都7px)。

  • border-width: 2px 5px 8px; 这里,第一个值2px是顶部边框的宽度,第二个值5px是左右边框的宽度,第三个值8px是底部边框的宽度。左侧和右侧边框的宽度是相同的,因为它们共享第二个值。

  • border-width: 2px 3px 4px 6px; 这是最具体的形式,允许你为每个边框分别设置宽度。第一个值2px是顶部边框的宽度,第二个值3px是右侧边框的宽度,第三个值4px是底部边框的宽度,第四个值6px是左侧边框的宽度。

2)通过其他方式设置

QPushButton {border-top-width: 1px;border-right-width: 2px;border-bottom-width: 3px;border-left-width: 4px; /* 分别设置各边框的宽度 */
}
border-style

        border-style属性定义了边框的样式。以下是一些border-style属性常用的值

  • none边框不显示。这意味着边框的宽度为0,或者边框的样式设置为不可见。
  • dotted定义点状边框。边框由一系列圆点组成,圆点之间的空间由边框宽度和点的样式共同决定。
  • dashed定义虚线边框。边框由一系列短划线组成,短划线之间的空间是均匀的。
  • solid定义实线边框。边框是连续的、不间断的线。
  • double定义双边框。这通常意味着有两条平行线,它们之间的空间以及每条线的宽度都取决于border-width的设置两条线和它们之间的空间总共为border-width值,故该值太小可能显示为单线边框。不过,在Qt中,双边框的具体渲染可能会因平台或控件的不同而有所差异。
  • groove定义3D凹槽边框的效果。这种边框看起来像是控件表面上的一个凹槽。边框的颜色可能比控件的背景色更暗,以营造内嵌效果。但是,具体的视觉效果可能取决于边框颜色和控件的背景色。
  • ridge定义3D凸槽边框的效果。与groove相反,这种边框看起来像是控件表面上的一个凸起。边框的颜色可能比控件的背景色更亮,以营造浮雕效果。
  • inset 和 outset这两个值分别用于创建内嵌和浮雕的3D边框效果。inset 使边框看起来像是控件的一部分,向内凹陷;而outset 则使边框看起来像是从控件表面凸出的。然而,与grooveridge类似,这些效果的精确外观也取决于边框颜色和控件的背景色。

border-color

        border-color属性用于设置边框的颜色。你可以指定一个颜色值(如颜色名、十六进制颜色代码、RGB/RGBA值等)。

QPushButton { border-color: #007BFF; /* 蓝色边框 */ 
} 
/* 或者为每一边指定不同的颜色 */ 
QPushButton { border-top-color: red; border-right-color: green; border-bottom-color: blue;border-left-color: yellow;
}

border-radius

        设置边框的圆角半径。

        可以指定一个值:所有角相同,

        两个值:水平和垂直方向

        四个值:分别对应左上角、右上角、右下角、左下角。

 

border-image

        使用图像作为边框。这是一个更高级的特性,允许你指定一个图像,该图像将被平铺、拉伸或缩放以覆盖控件的边框区域。

QPushButton { border-image: url(:/images/border.png)
}

注意事项

1. border-style默认样式是 none无边框如果控件(如QLineEdit、QLabel等)没有设置边框样式或者边框样式被设置为none即使设置了border-width和border-color,边框实际上是不可见的

2. border-width属性,其默认值通常是0。这意味着,如果不设置边框宽度,控件将不会有可见的边框,因为边框的宽度被设置为零。

3. border-color默认值

  1. 如果控件(如QPushButton、QLabel等)没有设置边框样式(border-style)或者边框样式被设置为none,那么边框实际上是不可见的,因此讨论边框颜色的默认值在这种情况下并不适用。
  2. 如果控件的边框样式被设置为可见(如soliddashed等),并且没有指定border-color,则边框颜色的默认值通常会遵循以下规则:继承自父元素主题或默认样式故:使用时最好指定颜色,防止在不同环境下颜色显示不一致。

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

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

相关文章

Layout 布局组件快速搭建

文章目录 设置主题样式变量封装公共布局组件封装 Logo 组件封装 Menu 菜单组件封装 Breadcrumb 面包屑组件封装 TabBar 标签栏组件封装 Main 内容区组件封装 Footer 底部组件封装 Theme 主题组件 经典布局水平布局响应式布局搭建 Layout 布局组件添加 Layout 路由配置启动项目 …

Unity实战案例全解析:PVZ 植物放置分析

前篇:Unity实战案例全解析:PVZ 植物卡片状态分析-CSDN博客 植物应该如何从卡牌状态转为实物? 其实就只需要考虑两个步骤加一个后续处理: 1.点击卡牌后就实例化 需要一个植物状态枚举,因为卡牌分为拿在手上和种植下…

道路裂缝,坑洼,病害数据集-包括无人机视角,摩托车视角,车辆视角覆盖道路

道路裂缝,坑洼,病害数据集 包括无人机视角,摩托车视角,车辆视角 覆盖道路所有问题 一共有八类16000张 1到7依次为: [横向裂缝, 纵向裂缝, 块状裂缝, 龟裂, 坑槽, 修补网状裂缝, 修补裂缝, 修补坑槽] 道路病害(如裂缝、…

MQ(RabbitMQ)笔记

初识MQ 同步调用优缺点 异步调用优缺点 总结: 时效性要求高,需要立刻得到结果进行处理--->同步调用 对调用结果不关心,对性能要求高,响应时间短--->异步调用

人工智能和大模型的简介

文章目录 前言一、大模型简介二、大模型主要功能1、自然语言理解和生成2、文本总结和翻译3、文本分类和信息检索4、多模态处理三、大模型的技术特性1、深度学习架构2、大规模预训练3、自适应能力前言 随着技术的进步,人工智能(Artificial Intelligence, AI)和机器学习(Mac…

NPM如何切换淘宝镜像进行加速

什么是淘宝镜像NPM? 淘宝镜像NPM和官方NPM的主要区别在于服务器的地理位置和网络访问速度。淘宝镜像NPM是由淘宝团队维护的一个npm镜像源,主要服务于中国大陆用户,提供了一个国内的npm镜像源,地址为 https://registry.npmmirror.…

论文阅读 - SELF-REFINE: Iterative Refinement with Self-Feedback

https://arxiv.org/pdf/2303.17651 目录 Abstract Introduction 2 Iterative Refinement with SELF-REFINE Evaluation 3.1 Instantiating SELF-REFINE 3.2 Metrics 3.3 Results Abstract 与人类一样,大型语言模型(LLMs)并非总能在首次…

【有啥问啥】深入浅出马尔可夫链蒙特卡罗(Markov Chain Monte Carlo, MCMC)算法

深入浅出马尔可夫链蒙特卡罗(Markov Chain Monte Carlo, MCMC)算法 0. 引言 Markov Chain Monte Carlo(MCMC)是一类用于从复杂分布中采样的强大算法,特别是在难以直接计算分布的情况下。它广泛应用于统计学、机器学习…

【python设计模式2】创建型模式1

目录 简单工厂模式 工厂方法模式 简单工厂模式 简单工厂模式不是23中设计模式中的,但是必须要知道。简单工厂模式不直接向客户端暴露对象创建的细节,而是通过一个工厂类来负责创建产品类的实例。简单工程模式的角色有:工厂角色、抽象产品角…

Redis——常用数据类型string

目录 常用数据结构(类型)Redis单线程模型Reids为啥效率这么高?速度这么快?(参照于其他数据库) stringsetgetMSET 和 MGETSETNX,SETEX,PSETEXincr,incrby,decr…

go多线程

1、简单使用(这个执行完成,如果进程执行比较久,这里不会等待它们结束) package mainimport "time"func main() {go func() {println("Hello, World!")}()time.Sleep(1 * time.Second) }2、wg.Add(数量)使用&…

STM32 定时器 输入捕获

定时器输入捕获 1 工作原理1.1 单个通道的工作原理 2 输入滤波2.1 输入滤波原理 3 边沿检测3.1 边沿检测3.2 信号选择 4 分频5 通道使能 1 工作原理 1.1 单个通道的工作原理 2 输入滤波 2.1 输入滤波原理 fck_INT:内部时钟频率,当PCLKx_Pre为1时&…

prometheus 集成 grafana 保姆级别安装部署

前言 本文 grafana 展示效果只需要 prometheus node_exporter grafana 其他的选择安装 环境和版本号 系统: CentOS 7.9 prometheus: 2.54.1 pushgateway: 1.9.0 node_exporter: 1.8.2 alertmanager: 0.27.0 grafana:11.2.0 官网:https://prometheus.io/ 下载地址:h…

软件测试 | APP测试 —— Appium 的环境搭建及工具安装教程

大家应该都有同一种感觉,学习appium最大的难处之一在于环境的安装,安装流程比较繁琐,安装的工具和步骤也较多,以下是基于Windows系统下的Android手机端的安装流程。就像我们在用Selenium进行web自动化测试的时候一样,我…

Gin渲染

HTML渲染 【示例1】 首先定义一个存放模板文件的 templates文件夹&#xff0c;然后在其内部按照业务分别定义一个 posts 文件夹和一个 users 文件夹。 posts/index.tmpl {{define "posts/index.tmpl"}} <!DOCTYPE html> <html lang"en">&…

计算机毕业设计 视频点播网站 Java+SpringBoot+Vue 前后端分离 文档报告 代码讲解 安装调试

&#x1f34a;作者&#xff1a;计算机编程-吉哥 &#x1f34a;简介&#xff1a;专业从事JavaWeb程序开发&#xff0c;微信小程序开发&#xff0c;定制化项目、 源码、代码讲解、文档撰写、ppt制作。做自己喜欢的事&#xff0c;生活就是快乐的。 &#x1f34a;心愿&#xff1a;点…

day22JS-npm中的部分插件使用方法

1. 静态资源目录 静态资源目录就是访问服务器的某些路劲时候&#xff0c;服务器可以吐出一个写好的指定页面。 实现思路&#xff1a; 1、先判断要找的路径是否是文件&#xff0c;如果是文件&#xff0c;就加载发给对方。 2、如果是文件夹&#xff0c;找到这个文件夹所在路径中…

Spring Boot基础

项目创建 项目启动 请求响应 RestController 1.返回值处理 RestController&#xff1a;这个注解结合了Controller和ResponseBody的功能。它默认将所有处理请求的方法的返回值直接作为响应体内容返回&#xff0c;主要用于构建RESTful API。返回的数据格式通常是JSON或XML&…

Linux:软件包管理器 yum和编辑器-vim使用

hello&#xff0c;各位小伙伴&#xff0c;本篇文章跟大家一起学习《Linux&#xff1a;软件包管理器 yum和编辑器-vim使用》&#xff0c;感谢大家对我上一篇的支持&#xff0c;如有什么问题&#xff0c;还请多多指教 &#xff01; 如果本篇文章对你有帮助&#xff0c;还请各位点…

整流电路的有源逆变工作状态

目录 1. 逆变的概念 2. 有源逆变的条件 3. 电流电路的概念 4. 产生逆变的条件 5. 三相桥式全控整流电路的有源逆变工作状态 6. 逆变角的概念 7. 逆变失败的原因 8. 最小逆变角的限制 整流电路的有源逆变状态是指通过控制整流器&#xff0c;使其将直流电源的能量反向送回…