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用的是三重颜色的渲染如下:

相关推荐
LDR00610 小时前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言
雪碧聊技术10 小时前
Tree.js是什么?一文讲透
开发语言·javascript·ecmascript
码云数智-园园10 小时前
C++20 Modules 模块详解
java·开发语言·spring
swordbob10 小时前
NIO的channel中什么是 fd(File Descriptor,文件描述符)
java·开发语言·nio
源分享11 小时前
Java线程同步的多种实现方法(非常详细)
java·开发语言·jvm
Luminous.11 小时前
C语言--day30
c语言·开发语言
何以解忧,唯有..11 小时前
Go语言循环语句详解:for、range与循环控制
开发语言·算法·golang
謓泽11 小时前
C语言不是语法,是通往机器的地图。
c语言·开发语言
云水一下11 小时前
从零开始学 PHP 系列(一):PHP 的前世今生与开发环境搭建
开发语言·php
飞天狗11111 小时前
零基础JavaWeb入门——第五课第二小节:九大内置对象 · 第2个:response(响应对象)
java·开发语言