Qt QDateEdit下拉日历的样式设计
QDateEdit样式设计
最近做了一个用到QDateEdit的项目,涉及到对这个控件进行设计的方面,对于我这个新手来说,我属实是有点摸不着头脑,这个嵌套了几层。但是还是在谷歌上找到了一些代码,解决了这些个问题,可能百度上有类似的东西,我也是copy的,但是我在百度上搜到的都就只是一个简简单单的代码,并没有任何的注释,导致摸不着头脑,所以就想自己来分享一下,也是对自己遇到的记录一下。
QDateEdit
这个的样式表设计比较简单
/* 这个是正常状态*/
QDateEdit
{
background-color: rgba(0,0,255,1);
color: rgba(255, 255, 255, 1);
}
/*这个是你选中的状态*/
QDateEdit:focus
{
border-color: rgba(255,0,0,1);
border-style: inset;
border-width: 5;
}
这个是样式表内容

这里是对QDateEdit的样式表部位分析


接下来是重头戏,
QCalendarWidget
在QDateEdit的下拉日历就是这个控件,这个控件是由其他一些控件组成的,所以比较复杂。我主要是参考了几个博文,在这里首先感谢。
QSS QCalendarWidget
Qt Forum
Stack overflow
这几个都帮助我从这个QCalendarWidget的泥潭里面走出来,挺感谢的。
下面是我的一些理解

这是样式表的代码
/*日历部分的背景颜色*/
#qt_calendar_calendarview {
background-color: rgba(10, 95, 189, 1);
font: 16px;
}
/*这是日历部分的另外一个写法*/
QCalendarWidget QTableView
{
alternate-background-color:rgba(10, 95, 189, 1); /* day name/week number background */
color: rgba(255,255,255,1);
}
/*这里是标题栏的样式*/
QCalendarWidget QWidget#qt_calendar_navigationbar
{
background-color: rgba(4, 51, 114, 1);
}
/*这是上一个月的箭头的样式*/
QCalendarWidget QToolButton#qt_calendar_prevmonth
{
qproperty-icon: url(:/images/images/B.png);
}
/*这里是下一个月的箭头的样式*/
QCalendarWidget QToolButton#qt_calendar_nextmonth
{
qproperty-icon: url(:/images/images/A.png);
}
/*这里是激活的日期的样式也就是当前这个月*/
QCalendarWidget QAbstractItemView:enabled
{
font-size:24px;
color: rgb(255, 255, 255);
/* 这里是你选择一个日期时的样式,包括背景和字体颜色
selection-background-color: rgb(64, 64, 64);
selection-color: rgb(0, 255, 0); */
}
/*这里是其他月份的样式*/
QCalendarWidget QAbstractItemView:disabled
{
color: rgb(64, 64, 64);
}
这个可以修改周末的颜色
QTextCharFormat format = calendarWidget->weekdayTextFormat(Qt::Saturday);
format.setForeground(QBrush(Qt::white, Qt::SolidPattern));
calendarWidget->setWeekdayTextFormat(Qt::Saturday, format);
下图是具体设计出来后的样式

Qt QDateEdit下拉日历的样式设计的更多相关文章
- paip.web数据绑定 下拉框的api设计 选择框 uapi python .net java swing jsf总结
paip.web数据绑定 下拉框的api设计 选择框 uapi python .net java swing jsf总结 ====总结: 数据绑定下拉框,Uapi 1.最好的是默认绑定..Map(k ...
- 去除select下拉框默认样式
去除select下拉框默认样式 select { /*Chrome和Firefox里面的边框是不一样的,所以复写了一下*/ border: solid 1px #; /*很关键:将默认的select选 ...
- Qt颜色下拉框
上周为了用Qt写一个类似颜色下拉框的东西,查阅了网上的多数相关资料,依然没有我想要的.终于在周四的时候下定决心重写QCombobox类来实现功能,现在把它贴出来,望看到的人,批评指正.废话不多说,先上 ...
- Qt QComboBox下拉框文字重叠解决方法
如果QComboBox下拉框文字重叠,在设置好样式之后,在后面加 setView(new QListView())即可; m_comboRate = new QComboBox(); m_comboR ...
- PullToRefresh 下拉刷新的样式修改
资源文件结构图, 先看看下拉刷新头的布局, <?xml version="1.0" encoding="utf-8"?> <merge xml ...
- 一个常见下拉菜单的样式:一体化小三角(纯css手写解决)
类似下拉菜单2个一体化小三角,习惯上用字体图标加jQuery处理,比较方便,但是下面纯css手写解决方式,效果也还不错,对CSS知识也是一个比较好的孔固. 小三角用了2种不同处理方式:1.利用bord ...
- [Axure RP] – 鼠标滑入按钮时自动下拉表单的设计示例
转:http://blog.qdac.cc/?p=2197 Axure RP 是个好东东呀,大大方便了程序员与客户之间的前期调研时的交流.不过有一些控制并没有鼠标移入和移出的操作,比如 HTML 按钮 ...
- combobox的下拉框高度怎样设计合理
orry,代码如下$.extend($.fn.combobox.methods, { autoHeight : function (jq) {//combobox扩展,自动调整高度 ...
- css样式美化 下拉框 select 样式
<span class="setleft wid80"><span class="fyhbx">*</span>入库类型 : ...
- Qt下拉对话框 ComboBox的用法
介绍 ComboBox是Qt的下拉菜单的一个控件,通过下拉菜单选择不同的选项,样式如图: 基本用法 m_ComBox = ui.comboBox; //设置默认显示值的索引,从0开始 m_ComBox ...
随机推荐
- shell 获取 目录名 当前目录名
Four ways to extract the current directory name By Sergio Gonzalez Duran on November 06, 2007 (9:00 ...
- Qt编写安防视频监控系统55-布局方案
一.前言 这是近期对视频监控系统做得最大的改动,采用了QMainWindow停靠窗体悬停窗体,极大的增强了拓展性,主界面中的各种小模块全部采用了悬停模块,最后不同的工作模式.不同的运行状态(全屏状态. ...
- Qt编写地图综合应用19-地图服务
一.前言 国内提供地图服务的厂家基本上是五家,百度地图.高德地图.腾讯地图.搜狗地图.天地图,国外的一般还有谷歌地图.微软地图(BING地图),这几家的地图服务的api接口都大同小异,甚至很多函数的名 ...
- 自主开发的OFD编辑器简介 -- 开ofd可编辑之先河
前言 OFD是板式文档格式,板式文档只管显示:怎么对板式文档编辑,那不是OFD标准考虑的事.有时使用者是"不讲道理的",我就是想要编辑ofd文件!需求就是开发软件的动力,毕竟开发 ...
- Golang-包8
http://c.biancheng.net/golang/package/ Go语言包的基本概念 Go语言是使用包来组织源代码的,包(package)是多个 Go 源码的集合,是一种高级的代码复用方 ...
- kafka的server.properties文件描述
版本:基于 kafka 2.4.0 http://archive.apache.org/dist/kafka/2.4.0/kafka_2.11-2.4.0.tgz # Licensed to the ...
- Superset config配置文件参数
superset配置文件config.py文件参数修改相关影响:1.如果让dashboard左侧出现筛选器,dashboard可交叉筛选,将以下三个参数设置为True "DASHBOARD_ ...
- Jacko pg walkthrough Intermediate window
nmap nmap -p- -A -sS 192.168.219.66 Starting Nmap 7.94SVN ( https://nmap.org ) at 2024-12-19 00:08 U ...
- Windows中利用任务计划执行进程守护
在Windows中除了开发专用的进程守护外,还可以利用任务计划做进程守护. 一.bat示例 tasklist | findstr "notepad" if %ERRORLEVEL% ...
- Idea报错 【cannot access com.xxx】的【解决办法】
正常操作代码,一个类突然标红,提示 cannot access com.xxx . 执行下面操作,执行完后项目变为正常 但是如果是你代码存在异常,可不是清缓存就能解决了,就要靠自己了哈哈 第一步Fil ...