QT 常见控件样式表(QPushButton、QRadioButton、QCheckBox、QScrollBar、QTableView、QTableWidget、QComboBox、QSlider)_qcombobox好看的样式-程序员宅基地

技术标签: QT  qt  开发语言  

通用:

  1. background-image:设置背景图片(根据图片大小)

  2. border-image:设置背景图片(根据控件大小)

  3. background-color:设置背景颜色

  4. border-color:设置边框颜色

  5. color:设置字体颜色

  6. border:设置边框  例:border:1px solid red;

  7. border-radius:设置边框圆角 /*左上 右上 右下 左下*/    border-top-left-radius:设置单个圆角

  8. font:设置字体

  9. text-align: 设置字体水平对齐  left:靠左  center:居中  right:靠右

  10. padding:设置内边框距离

  11. margin:设置外边框距离

一、QPushButton按钮

按钮按下样式

QPushButton::pressed{
background-color: rgba(164, 173, 179, 0.8);
border:0;
color:black;
}

按钮不可用状态下的样式

QPushButton:disabled{
border: 1 solid rgba(154, 154, 154, 1);
font:400 25px;
color:rgba(154, 154, 154, 1);
border-radius:5px;
}

二、QRadioButton/QCheckBox单选按钮

设置按钮未选中时的样式

QRadioButton::indicator::unchecked {

border-image: url(:/images/uncheck.png);

}

设置按钮选中时的样式

QRadioButton::indicator::checked {

border-image: url(:/images/check.png);

}

设置按钮的宽度和高度

QRadioButton::indicator {width: 20px;height: 20px;}

当多个 QRadioButton属于同一个父类时,取消选中没有作用,可尝试下面方法:

ui->radioButton->setAutoExclusive(false);
ui->radioButton->setChecked(false);
ui->radioButton->setAutoExclusive(true);

三、QScrollBar滚动条

设置垂直滑块整体

QScrollBar:vertical{

background:#02123e;//背景色

padding-top:18px;//上预留位置(放置向上箭头)

padding-bottom:18px;//下预留位置(放置向下箭头)

border:1px solid #083863;//分割线

}

设置滑块样式

QScrollBar::handle:vertical{

background:#02123e;//滑块颜色

min-height:80px;//滑块最小高度

}

设置向下按钮

QScrollBar::add-line:vertical{

background:02123e;

border:1px solid #083863;

}

设置向上按钮

QScrollBar::sub-line:vertical{

background:02123e;

border:1px solid #083863;

}

设置滚动条的增加页区域

QScrollBar::add-page:vertical{

background:#053c75;

}

设置滚动条的减少页区域

QScrollBar::sub-page:vertical{

background:#053c75;

}

四、QTableWidget/QTableView表格

设置每个单独的标题区域

QHeaderView::section{

border:none;

background:rgb(3, 24, 63);

color: #0e9ded;

font: 13pt “Arial”

}

设置左上角拐点按钮

QTableCornerButton::section{

background-color:red;

}

设置表格

QTableView{

selection-background-color:#0672dc;//设置选中颜色

alternate-background-color: #0c2c59;//设置交替背景色

}

选中样式

QTableWidget::item:selected{

background-color:blue;

color:white;

}

设置交替背景色需设置下面属性为true

setAlternatingRowColors(true);//设置使用交替背景

设置滚动条样式见上述滚动条。

表格其他设置

verticalHeader()->setVisible(false);//设置行标题不可见

setFrameShape(QFrame::NoFrame); //设置无边框

setShowGrid(false); //设置不显示格子线

setEditTriggers(QAbstractItemView::NoEditTriggers); //设置不可编辑

setFocusPolicy(Qt::NoFocus); //去除选中虚线框

horizontalHeader()->setSectionsClickable(false);//设置表头不可点击

horizontalHeader()->setDefaultAlignment(Qt::AlignHCenter | Qt::AlignVCenter);//设置标题对齐方式

horizontalHeader()->setSectionResizeMode(QHeaderView::Fixed);//设置标题列宽不可变  QHeaderView::Stretch  //平均分配整个表格宽度  QHeaderView::ResizeToContents //根据内容调整宽度

verticalHeader()->setDefaultSectionSize(35); //设置行高

setSelectionBehavior(QAbstractItemView::SelectRows);//设置选中整行

setSelectionMode(QAbstractItemView::SingleSelection);//设置选中单行

horizontalHeader()->setStretchLastSection(true);//最后一列填满

setHorizontalScrollBarPolicy(Qt::ScrollBarAlwaysOff);//设置不显示水平滚动条

horizontalHeader()->resizeSection(0,120); //设置表头第1列的宽度

horizontalHeader()->setMinimumSectionSize(1);//设置列的最小值,否则最小宽度为25

horizontalHeader()->setHeighlightSections(false);//设置点击表头时是否光亮

五、QComboBox下拉框

设置下拉框整体

QComboBox{

font: 12pt "Arial";

color: rgb(211,238,255);

background-color: rgba(255, 255, 255, 0);

border:0;

}

设置下拉按钮

QComboBox::drop-down {

image: url(:/photo/loginArrow.png);

}

整个下拉窗体

QComboBox QAbstractItemView {

outline: 0px solid; /*分割线*/

border: 1px solid;

color: #d4f3ff;

background-color: #124879;

selection-background-color:#0a386e; /* 整个下拉窗体被选中项的背景色*/

}

设置滚动条样式见上述滚动条。

(可将QScrollBar:vertical{}也成QComboBox QAbstractScrollArea QScrollBar:vertical{})

下拉列表的位置:

在Windows下默认位置如下图:

       

在ubuntu下默认位置如下图:

      

 可以通过设置样式表来更改下拉窗体的位置:

QComboBox {combobox-popup: 0;}

 其中 0代表第一种样式,是常用的样式;1代表第二种样式。

六、QTabWidget

标题区域

QTabWidget#tabWidget{

background-color:rgb(255,0,0);

}

必须设置背景色属性才可显示标题栏颜色

setAttribute(Qt::WA_StyledBackground);

tab

QTabBar::tab{

background-color:rgb(220,200,180);

color:rgb(0,0,0);

font:10pt "新宋体"

}

tab选中时

QTabBar::tab::selected{

background-color:rgb(0,100,200);

color:rgb(255,0,0);

font:10pt "新宋体"

}

七、QMenu

窗体

QMenu{

color:rgb(255,255,255);

background-color:#073057;

border-color:#83b6cd;

}

选中项

QMenu::item:selected{

background-color:#0e94eb;

}

八、QSlider

滑块整体背景区域

QSlider{

background-color: #E5E5E5;

border-radius: 18px;

padding: 4px;

image: url(:/Data/clean_record_setting/level.png);

}

 滑块滑动区域

QSlider::groove:horizontal {

height: 20px;

border-radius: 18px;

padding: 4px;

}

滑块滑过区域

QSlider::sub-page:horizontal {

background-color:rgba(133, 106, 68, 0.25);

height: 28px;

border-top-left-radius:12px;

border-bottom-left-radius:12px;

}

 滑块未滑过区域

 QSlider::add-page:horizontal {

background-color:rgba(255, 106, 68, 0.25);

}

 滑块

QSlider::handle:horizontal {

width: 4px;

height:40px;

background-color: #585858;

margin-top:-10px;

margin-bottom:-10px;

} 

九、QSpinBox/QDoubleSpinBox

 整个窗体背景

QDoubleSpinBox{  
	font: 500  30px "DIN";
	color: rgb(32,41,69);

	selection-background-color:transparent;
	selection-color:black;
	background-color:transparent;
}

减按钮

QDoubleSpinBox::down-button {
	subcontrol-origin:border;
	subcontrol-position:left top;
	image: url(:/image/subtract.png);
	width:60px;
	height:60px;   
}

加按钮

QDoubleSpinBox::up-button {
	subcontrol-origin:border;
	subcontrol-position:right top;
	image: url(:/image/add.png);
	width:60px;
	height:60px;    
}

 减按钮按下

QDoubleSpinBox::down-button:pressed{
	image: url(:/image/subtract_pressed.png);
	width:60px;
	height:60px;   
}

 加按钮按下  

QDoubleSpinBox::up-button:pressed{
	image: url(:/image/add_pressed.png);
	width:60px;
	height:60px; 
}
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_67254672/article/details/124510370

智能推荐

Windows中ssh连接Ubuntu中ssh服务器_ubuntu和windows ssh互传-程序员宅基地

文章浏览阅读367次。4.修改ssh的配置文件sshd_config,默认路径为/etc/ssh/ssd_config ,修改port,ListenAddress,PermitRootLogin。6.ssh远程连接默认使用的是22号端口,要让防火墙允许ssh服务通过防火墙(如果改成了其他端口,一样的操作)最近需要安装git,在本地建仓后,远程SSH服务,需要安装openssh。2.打开[运行]->输入cmd->打开命令行窗口->输入ssh->按回车。4.连接ubuntu中的ssh,,执行。3.设置ssh服务开机自启动。_ubuntu和windows ssh互传

verilog语言设计的32位输入使用Booth两位一乘和华莱士树的定点补码乘法器(附参考仿真文件)_32位乘法器 verilog-程序员宅基地

文章浏览阅读1.6k次,点赞3次,收藏26次。32位两位一乘华莱士树定点补码乘法器_32位乘法器 verilog

使用Glide的BitmapTransformation实现圆角边框图片-程序员宅基地

文章浏览阅读5.5k次。使用Glide的BitmapTransformation实现圆角边框图片一、哪里需要圆角边框图片二、实现效果三、实现原理四、完整代码五、下载地址一、哪里需要圆角边框图片神马笔记中有几个地方需要圆角边框图片笔记/文件夹列表界面重新命名笔记界面移动笔记界面……二、实现效果图标略小,大致可以看出是圆角,并且带有边框的图片。三、实现原理Glide已经提供了圆角图片的实现。应用..._bitmaptransformation

内网linux安装mysql5.7.22-程序员宅基地

文章浏览阅读6.5k次,点赞6次,收藏19次。 很多的公司开发都是在内网,mysql也是装在内网,自己在内网安装的时候,发现了问题,这里记录一下,方便和我一样的人,本次安装的服务器事CentOS6.5 ps:这是我人生第一篇博客,此时此刻的我是无比激动的!!!1. 安装1.1 下载MySQLmysql官网下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads将..._内网linux安装mysql5.7.22

python 实现字符串反转的几种方法_python编写一个函数,其作用是输入的字符串反转过来-程序员宅基地

文章浏览阅读1.6k次。转自:https://www.cnblogs.com/taceywong/p/8045127.html第一种:使用字符串切片python中步进为正,从左往右取,步进为负,从右往左取str(n)[::-1]实现字符串翻转result = s[::-1]第二种:使用列表的reverse方法l = list(s)result = "".join(l.reverse())..._python编写一个函数,其作用是输入的字符串反转过来

Zookeeper入门看这篇就够了-程序员宅基地

文章浏览阅读10w+次,点赞686次,收藏4.1k次。Zookeeper是什么官方文档上这么解释zookeeper,它是一个分布式服务框架,是Apache Hadoop 的一个子项目,它主要是用来解决分布式应用中经常遇到的一些数据管理问题,如:统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理等。上面的解释有点抽象,简单来说zookeeper=文件系统+监听通知机制。1、 文件系统Zookeeper维护一个类似文件系统的数据结构:每个子目录..._zookeeper

随便推点

element 轮播图prev和next方法使用_el-carousel中prev使用-程序员宅基地

文章浏览阅读3.3k次。<div class="direction"> <img src="../assets/image/index/left2.png" @click="prev" /> <img src="../assets/image/index/left2.png" @click="next" /> </div> <el-carousel :autoplay="false" arrow="always" _el-carousel中prev使用

mysql把游标数据存入表中_mysql存储过程使用游标循环插入数据-程序员宅基地

文章浏览阅读273次。DELIMITER $$DROP PROCEDURE IF EXISTS `procedure_course`$$CREATE DEFINER=`root`@`localhost` PROCEDURE `topsale`.`procedure_course`()BEGINDECLARE c_user_login_id VARCHAR(100);DECLARE done INT DEFAULT 0;..._mysql 游标插入表

【灵感一剖】晚点剖析支付宝上线的“晚点付”_e码付是什么-程序员宅基地

文章浏览阅读745次。支付宝新上线“晚点付”功能支付宝版本更新后推出“晚点付”功能,可以从三个方面剖析。官宣介绍“网”丝马迹个人总结官宣介绍信息搜索途径应用商城版本记录目前安卓应用商城支付宝更新至10.2.6.7010,苹果APP store更新至10.2.6,但是并没有记录“晚点付”信息;官方微博目前支付宝官方微博没有发布“晚点付”信息;“网”丝马迹在互联网上搜索到“晚点付”相关信息微博目前在“新浪科技”上介绍“晚点付”的使用流程,以及此热门话题的相关讨论;知乎已存在相关话题的讨论,地_e码付是什么

JS/TS写一个Dictionary类_艾孜尔江撰稿_字典 ts写法-程序员宅基地

文章浏览阅读4.1w次。export default class Dictionary { private dataStore: any = new Array<any>(); // must be instatiated! Dictionary() { this.dataStore = []; } public add = (key: any, value: any) => { this.dataStore[key] = value; _字典 ts写法

poj1321_poj1321位运算-程序员宅基地

文章浏览阅读914次。Description在一个给定形状的棋盘(形状可能是不规则的)上面摆放棋子,棋子没有区别。要求摆放时任意的两个棋子不能放在棋盘中的同一行或者同一列,请编程求解对于给定形状和大小的棋盘,摆放k个棋子的所有可行的摆放方案C。Input输入含有多组测试数据。每组数据的第一行是两个正整数,n k,用一个空格隔开,表示了将在一个n*n的矩阵内描述棋盘,以及摆放棋子的数目。 n <= 8 , k <=_poj1321位运算

FastDFS使用_fastdfs启动-程序员宅基地

文章浏览阅读1.9k次。​ fastdfs安装,springboot集成_fastdfs启动

推荐文章

热门文章

相关标签