QSS之QPushButton 详细介绍

2023-05-16

官方参考资料

QPushButton {  
    /* 前景色 */  
    color:red;  

    /* 背景色 */  
    background-color:rgb(30,75,10);  

    /* 边框风格 */  
    border-style:outset;  

    /* 边框宽度 */  
    border-width:2px;  

    /* 边框颜色 */  
    border-color:rgb(10,45,110);  

    /* 边框倒角 */  
    border-radius:10px;  

    /* 字体 */  
    font:bold 14px;  

    /* 控件最小宽度 */  
    min-width:100px;  

    /* 控件最小高度 */  
    min-height:20px;  

    /* 内边距 */  
    padding:4px;  
}  

/* 鼠标按下时的效果 */  
QPushButton#pushButton:pressed {  
    /* 改变背景色 */  
    background-color:rgb(40,85,20);  

    /* 改变边框风格 */  
    border-style:inset;  

    /* 使文字有一点移动 */  
    padding-left:6px;  
    padding-top:6px;  
}  

/* 按钮样式 */  
QPushButton:flat {  
    border:2px solid red;  
}  

/* 当按钮打开菜单时:ui->pushButton->setMenu(btnMenu) */  
QPushButton:open{  
    background-color:qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,stop: 0 #dadbde, stop: 1 #f6f7fa);  
}  

/* 子选择器:菜单 */  
QPushButton::menu-indicator {  
    image:url(:/images/close.png);  

    /* 去掉小三角号   
    image:none;*/  

    /* 绘制subcontrol 的参考矩形的位置 */  
    subcontrol-origin:padding;  

    /* 小三角的位置 */  
    subcontrol-position:bottom right;  
}  

QPushButton::menu-indicator:pressed,QPushButton::menu-indicator:open {  
    position:relative;  
    top:4px;  
    left:4px;  
} 

前景色 color:rgb(255, 0, 0)

QPushButton *btn = new QPushButton("我叫按钮");
btn->setStyleSheet( QString("QPushButton{color:rgb(255, 0, 0)}      \
                            QPushButton:hover{color:rgb(0, 255, 0)} \
                            QPushButton:pressed{color:rgb(0, 0, 255)}") );
btn->show();

效果如下:
按钮上的字初始颜色是红色
这里写图片描述

鼠标移到按钮上后,按钮按钮上字的颜色变成绿色
这里写图片描述

鼠标点击后,按钮按钮上字的颜色变成蓝色
这里写图片描述

背景色 background-color:rgb(255, 0, 0)

QPushButton *btn = new QPushButton("我叫按钮");
btn->setStyleSheet( QString("QPushButton{background-color:rgb(255, 0, 0)}       \
                            QPushButton:hover{background-color:rgb(0, 255, 0)}  \
                            QPushButton:pressed{background-color:rgb(0, 0, 255)}") );
btn->show();

效果如下:
按钮初始背景色是红色

这里写图片描述

鼠标移到按钮上后,按钮背景色变成绿色
这里写图片描述

鼠标点击后,按钮背景色变成蓝色
这里写图片描述

边框风格 border:2px solid red

调整边框风格时,border-width >= 1。否则不管怎么调整,都看不出效果

border-style属性值含义
none定义无边框。
hidden与 “none” 相同。不过应用于表时除外,对于表,hidden 用于解决边框冲突。
dotted定义点状边框。在大多数浏览器中呈现为实线。
dashed定义虚线。在大多数浏览器中呈现为实线。
solid定义实线。
double定义双线。双线的宽度等于 border-width 的值。
groove定义 3D 凹槽边框。其效果取决于 border-color 的值。
ridge定义 3D 垄状边框。其效果取决于 border-color 的值。
inset定义 3D inset 边框。其效果取决于 border-color 的值。
outset定义 3D outset 边框。其效果取决于 border-color 的值。
inherit规定应该从父元素继承边框样式。
QPushButton *btn = new QPushButton("我叫按钮");
btn->setStyleSheet( QString("QPushButton{border:2px solid #ff0000}       \
                            QPushButton:hover{border:5px dotted #00ff00} \
                            QPushButton:pressed{border:10px groove #0000ff}") );
btn->show();

效果如下:
按钮初始为普通红色边框
这里写图片描述

鼠标移到按钮上后,按钮边框变成绿色点状边框
这里写图片描述

鼠标点击按钮后,按钮边框变成蓝色3D 凹槽边框
这里写图片描述

边框倒角 border-radius:2px

QPushButton *btn = new QPushButton("我叫按钮");
btn->setStyleSheet( QString("QPushButton{   border:2px solid red;               \
                                            border-top-left-radius:4px;         \
                                            border-top-right-radius:8px;        \
                                            border-bottom-left-radius:16px;     \
                                            border-bottom-right-radius:32px }   \
                            QPushButton:hover{border:5px dotted #00ff00}        \
                            QPushButton:pressed{border:10px groove #0000ff}") );
btn->show();

效果如下:
这里写图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

QSS之QPushButton 详细介绍 的相关文章

  • java 超市消费小票_Java-超市购物小票案例-详细介绍

    1 1 超市购物购物小票需求分析 用户循环进行三个操作 xff1a 1 输入购买数量 xff0c 代表为所购买货物的数量赋值 xff0c 从而计算每项商品金额 2 打印小票 xff0c 将已有数据打印 3 退出系统 因为该程序为循环操作 x
  • Lora超全知识归纳,对于lora和lorawan的详细介绍

    目录 LORA介绍 LoRa通讯技术 网关信道 网关负载 LoRa模块信道 节点入网 终端LoRa应用方案 设备唤醒 终端LoRa应用实践 网关详情 Lora和loraWAN LoRaWAN 概貌 LoRaWAN体系结构 LoraWAN g
  • linux分区(详细介绍)

    有20G大小的空间 xff0c linux至少要分3个分区 xff1a 根分区 swap区交换空间 boot区 1 点击 空闲 xff0c 标准分区 xff0c 点击 创建 2 创建一个boot分区 xff1a linux启动时需要一些引导
  • QScrollArea qss样式设置失效问题

    QScrollArea通过样式改变背景色 遇到设置QScrollArea qss无法生效问题 xff0c 网上没找到合适解决办法 xff0c 查看QScrollArea qt4源码后发现 xff0c 增加如下代码之后 xff0c qss正常
  • QT控件提升之QPushButton提升为QMenu

    当一个控件进行提升之后 xff0c 就有了新的功能 xff0c 在原来的一些特性基础上 xff0c 发生一些新的改变 QT控件提升方法 xff1a 1 需要写一个需要提升为某种功能的类 2 打开qt设计师 xff0c 在对应需要提升的控件
  • PyQt——按钮类控件QPushButton

    span class token keyword import span sys span class token keyword from span PyQt5 span class token punctuation span QtCo
  • ROS学习 catkin CMakeList.txt详细介绍

    ROS中catkin CMakeLists txt的内容 CMakeList txt文件是CMake编译系统编译软件包过程的输入文件 任何CMake兼容包都包含一个或多个CMakeLists txt文件 xff0c 这些文件描述了如何编译代
  • Java char[]数组转成String类型(char to String)详细介绍

    前言 string toCharArray 方法将给定的字符串转换为字符序列 Java中字符串转换为字符数组的方法在之前的博客已经介绍了 xff01 今天介绍char 数组转成String 方法有4种 xff1a 使用 String 类的
  • RS232 RS422 RS485详细介绍

    1 RS 232 C RS 232 C是美国电子工业协会EIA xff08 Electronic Industry Association xff09 制定的一种串行物理接口标准 RS是英文 推荐标准 的缩写 xff0c 232为标识号 x
  • OpenCV之Mat的详细介绍

    在opencv中 xff0c Mat作为图像的存储容器 xff0c 是非常基础也是非常重要的知识 xff0c 本文主要介绍Mat相关的操作 1 图像复制 再开始将拷贝之前 xff0c 先给大家分享一下浅拷贝和深拷贝 浅拷贝 xff1a 拷贝
  • QT类学习系列(8)- QPushButton,QToolButton的区别

    QPushButton与QToolButton的区别 weixin 42073232的博客 CSDN博客https blog csdn net weixin 42073232 article details 84848142 QToolBu
  • QT QPushButton点击事件的实现

    最近需要对按钮实现效果 当鼠标按下时按钮有效果1 然后鼠标松开时按钮有效果2 分析 这里没有现成的信号可以使用 需要重载mousePressEvent 及 mouseReleaseEvent 事件函数 在mouseReleaseEvent
  • 在 QSS 中设置 Qt Widget 属性

    在 QSS 中设置 Qt Widget 属性 默认样式 QSS 自定义属性与 Qt 类型对应 使用枚举 使用 QSS 属性选择器 代码实例 在 QSS 中设置 Qt Widget 属性 Q OBJECT 添加自定义属性到 Qt动态属性系统
  • Qt扫盲-QSS概述

    QSS概述 一 概述 二 详细 一 概述 QSS 其实是Qt样式表 Qt样式表是Qt界面的一种强大的机制 除了通过继承QStyle已经可以实现的功能外 它还允许您自定义窗口组件的外观 Qt样式表的概念 术语和语法很大程度上受到HTML层叠样
  • 循环创建PyQt5按钮:所有按钮触发相同的回调

    我应该提到 我已经阅读了这些内容 但我仍然无法实现我的目标 在 for 循环中使用字典来创建按钮不起作用 循环中的 QtCore QObject connect 仅影响最后一个实例 我的目标是制作一个 Linux 启动器 应用程序 按钮的创
  • 设置 Qt QPushButton 弹出菜单的位置(向右)

    我正在为 Qt 按钮小部件编写弹出菜单 每当单击按钮时 就会弹出一个菜单 在按钮下方 默认情况下 弹出菜单位于下方左侧 有没有办法让弹出菜单在按钮下方的右侧弹出 没有设置位置的功能 所以我想知道是否有一些复杂的方法可以做到这一点 这是一些代
  • 如何防止回车键关闭我的 QDialog (Qt 4.8.1)

    我有一个QDialog with a QDialogButtonBox The OK and Cancel按钮处于活动状态 有时 我会根据对话框的状态禁用或隐藏 确定 按钮 看来 无论我做什么 Enter 键总是会激活 确定 按钮 我真的不
  • PySide:如何在 QPushButton 单击槽中获取单击的 QPushButton 对象?

    我是 PySide 的新手 我想在其单击的插槽中获取 QPushButton 对象 例如使用它来获取其文本 button QtGui QPushButton start go button clicked connect self butt
  • PySide:QPushButton 按下后保持突出显示

    在我的工具中 当用户按下按钮时 会创建一个弹出窗口 我的问题是 用户按下打开窗口的按钮在弹出窗口创建时保持突出显示 就像我将鼠标悬停在它上面一样 并且即使在弹出窗口被删除后仍然保持这种状态 我实际上喜欢弹出窗口处于活动状态时的此突出显示 它
  • 如何为列表中的每个元素创建一个按钮并将其放在滚动区域中?

    我有一个列表 每次用户打开文件时都会获取一个元素 我需要创建一个带有文件名 列表中的元素 的按钮 每次将该文件附加到列表中时 并将该按钮放入滚动区域 问题是我总是只有一个按钮 只是更改了名称 filenames def addfiles f

随机推荐

  • C#:winform窗体 实现类似QQ的窗体在桌面边缘停靠和隐藏

    设计思路 xff1a 1 使用定时器 xff08 Timer xff09 来监控鼠标位置和窗体位置 xff0c 并实现窗体的停靠和隐藏 2 当鼠标拖动窗体时 xff0c 窗体才有可能根据自身位置决定是否停靠 3 如果窗体四周没有接触到屏幕边
  • VUE+ts 运行时常见错误

    1 error Extra semicolon semi 错误分号半 error Strings must use singlequote 错误字符串必须使用单引号 解决办法 xff1a 在项目根目录下新建文件 xff1a prettier
  • 配置CMakeLists.txt工程文件把当前工程下的所有c文件添加为可执行程序

    span class token function cmake minimum required span span class token punctuation span VERSION span class token number
  • C语言实现选择排序

    排序的基本方法 xff1a 选择排序 原理跟我们生活十分贴近 xff0c 从一组数中扫一眼 xff0c 找到最小的 xff0c 放到最左边 xff0c 第二小的放在左起第二个 xff0c 以此类推 xff01 下面是源代码 include
  • C语言实现冒泡排序

    冒泡排序作为学习排序最基本的算法 xff0c 具有稳定性与实用性 下面是C语言冒泡排序的源代码 include lt stdio h gt int main void int a 10 61 6 4 3 2 7 8 9 10 1 5 int
  • ESP32(ESP-IDF)+CNC Shield+A4988控制步进电机

    陈拓 2023 04 15 2023 04 15 1 简介 在 Arduino Uno开发板 43 电机驱动扩展版CNC Shield V3 0硬件说明 https blog csdn net chentuo2000 article det
  • C语言实现快速排序算法

    快排作为公认最优秀的排序方法 xff0c 是每一个程序员都应该掌握的 xff0c 那么 xff0c 今天就由我来为大家简单讲解一下快速排序算法的代码 源代码如下 xff1a include lt stdio h gt void quicks
  • C语言实现二分查找

    相较于线性查找 xff0c 二分查找在面对大量数据时的效率更高 xff0c 但它的缺点是只能对有序数组进行查找 源代码如下 xff1a include lt stdio h gt void binarysearch int a int su
  • 约瑟夫环详解

    package newjosephu public class myfinaljosephu 你可能会说crazy 我只想说ez xff01 public static void main String args circlelinkedl
  • 01背包问题(滚动数组实现的逻辑)

    package tttest public class mybetterbag public static void main String args int weight 61 1 3 4 int bagsize 61 4 int val
  • java递归实现辗转相除法

    public static int getres int a int b if b 61 0 return getres b a b return a
  • java 线索二叉树的构建

    public class test public static void main String args Node root 61 new Node 1 Node node2 61 new Node 2 Node node3 61 new
  • VINS-Mono

    非极大值抑制 NMS算法 xff0c 思想是搜索局部最大值 xff0c 抑制非极大值 输入 xff1a 目标边界框及其对应的置信度的分列表 xff0c 设定阈值 xff0c 阈值用来删除重叠较大的边界框 IoU xff1a 两个边界框的交集
  • vtk世界坐标系与屏幕坐标系的转换

    世界坐标系 gt 屏幕坐标系 double worldCoord 3 61 100 100 20 vtkSmartPointer lt vtkCoordinate gt pCoorPress 61 vtkSmartPointer lt vt
  • VTK读取DCM保存成png

    VTK读取DCM保存成png include lt vtkSmartPointer h gt include lt vtkImageViewer2 h gt include lt vtkDICOMImageReader h gt inclu
  • 姿态矩阵与姿态向量的相互转化

    罗德里格斯公式 转轴 n 是矩阵 R 特征值 1 对应的特征向量 求解此方程 再归一化 就得到了旋转轴 CV EXPORTS W void Rodrigues InputArray src OutputArray dst OutputArr
  • 电脑连接树莓派Zero W

    电脑连接树莓派ZeroW 陈拓 2018 05 16 2018 06 09 0 概述 本位介绍两种电脑连接树莓派PiZero W的方法 xff1a l 电脑通过USB以太网连接树莓派ZeroW l 电脑通过WiFi连接树莓派ZeroW 1
  • 读取 ttf 字体文件并提取汉字轮廓

    读取 ttf 字体文件并提取汉字轮廓 ttf 免费下载 ttf 下载链接 编译安装 freetype freetype下载链接 实现效果 demo下载地址
  • CRC-16/MODBUS 校验位计算

    实验指令 xff1a 前23位表示 信息头 43 信息内容 24 xff0c 25位是待计算的校验位 26位是结束码 7E 01 00 00 01 10 02 00 27 00 0C 00 02 00 00 00 00 00 50 00 3
  • QSS之QPushButton 详细介绍

    官方参考资料 span class hljs tag QPushButton span span class hljs rules span class hljs comment 前景色 span span class hljs rule