qt显示类控件---QCalendarWidget

目录

核心方法

重要信号

案例演示

案例1:核心方法和信号演示


复制代码
QCalendarWidget表示一个日历

核心方法

重要信号

案例演示

案例1:核心方法和信号演示

cpp 复制代码
#include "widget.h"
#include "ui_widget.h"
#include<QDebug>

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    //QCalendarWidget表示一个日历
    //初始值默认是当前日期年份
    //QDate selectedDate() 显示当前选中的日期
    qDebug() << ui->calendarWidget->selectedDate();
    //setGridVisible(bool) 是否显示表格边框
    ui->calendarWidget->setGridVisible(true);
    //setNavigationBarVisible(bool)  日历上方标题是否显示,相当于上方的月份年份不显示
    //ui->calendarWidget->setNavigationBarVisible(false);
    //setDateEditEnabled(bool) 是否允许日期被编辑,不允许后还是可以切换日期的
    ui->calendarWidget->setDateEditEnabled(false);

}

Widget::~Widget()
{
    delete ui;
}

//重要信号

void Widget::on_calendarWidget_selectionChanged() //当选中日期发生改变时发出selectionChanged信号
{
    QDate date = ui->calendarWidget->selectedDate();
    qDebug() << date;
    ui->label->setText(date.toString()); //使用toString方法转换成字符串就可以输入了
}

void Widget::on_calendarWidget_activated(const QDate &date) //当双击某个日期或者回车键时发出activated信号,提供的参数是选中的年份日期
{
    qDebug() << date;
    ui->label->setText(date.toString());
}

这个label用的是三重颜色的渲染如下:

相关推荐
二狗哈29 分钟前
Cesium快速入门15:图元Primitive创建图像物体
开发语言·javascript·3d·webgl·cesium·地图可视化
lljss202040 分钟前
C# 定时器类实现1s定时器更新UI
开发语言·c#
白杨攻城狮42 分钟前
C# 关于 barierr 心得
开发语言·c#
zhglhy44 分钟前
Jaccard相似度算法原理及Java实现
java·开发语言·算法
catchadmin1 小时前
PHP 8.5 容器化实战指南
开发语言·php
nono牛1 小时前
完整bash语法教程:从零到专家
开发语言·chrome·bash
啥都不懂的小小白1 小时前
Java日志篇3:Logback 配置全解析与生产环境最佳实践
java·开发语言·logback
江沉晚呤时1 小时前
延迟加载(Lazy Loading)详解及在 C# 中的应用
java·开发语言·microsoft·c#
Hard but lovely1 小时前
C/C++ ---条件编译#ifdef
c语言·开发语言·c++
董世昌411 小时前
js怎样控制浏览器前进、后退、页面跳转?
开发语言·前端·javascript