QT5-控件-QDateEdit 和 日期类QDate
#ifndef MAINWINDOW_H
#define MAINWINDOW_H #include <QMainWindow>
#include <QDate>
#include <QDateEdit> class MainWindow : public QMainWindow
{
Q_OBJECT public:
MainWindow(QWidget *parent = );
~MainWindow(); QDateEdit* dateEdit[]; public slots:
void dateChanged();
}; #endif // MAINWINDOW_H
#include "mainwindow.h"
#include <QtDebug> MainWindow::MainWindow(QWidget *parent)
: QMainWindow(parent)
{
this->resize(,);
this->centralWidget(); QDate dt1 = QDate(,,);
QDate dt2 = QDate::currentDate(); dateEdit[] = new QDateEdit(dt1.addYears(),this);
dateEdit[]->setGeometry(,,,); dateEdit[] = new QDateEdit(dt1.addMonths(),this);
dateEdit[]->setGeometry(,,,); dateEdit[] = new QDateEdit(dt1.addDays(),this);
dateEdit[]->setGeometry(,,,); dateEdit[] = new QDateEdit(dt2,this);
dateEdit[]->setGeometry(,,,); // 判断日期是否合法1
if(QDate::isValid(,,))
{
qDebug()<<"2016-02-30是合法日期";
}
else
{
qDebug()<<"2016-02-30是非法日期";
}
// 判断日期是否合法2
if(QDate(,,).isValid())
{
qDebug()<<"2016-02-21是合法日期";
}
else
{
qDebug()<<"2016-02-21是非法日期";
}
// 从字符串格式化得到日期
QDate dt3 = QDate::fromString("2016.02.01","yyyy.MM.dd");
QDate dt4 = QDate::fromString("02-01","MM-dd");
qDebug()<<"字符串1格式化得到的时间"<<dt3.toString();
qDebug()<<"字符串2格式化得到的时间"<<dt4.toString();
// 将时间转化为字符串
qDebug()<<"TextDate格式(默认):"<<dt3.toString(Qt::TextDate);
qDebug()<<"ISO格式:"<<dt3.toString(Qt::ISODate);
qDebug()<<"各国表现方式:"<<dt3.toString(Qt::SystemLocaleDate);
connect(dateEdit[],SIGNAL(dateChanged(QDate)),this,SLOT(dateChanged()));
// 得到星期,月的长短英文字符串
QString longWeek = dt3.longDayName(dt3.dayOfWeek());
QString longMonth = dt3.longMonthName(dt3.month());
QString strDateLong = QString("%1 %2").arg(longWeek).arg(longMonth); QString shortWeek = dt3.longDayName(dt3.dayOfWeek());
QString shortMonth = dt3.longMonthName(dt3.month());
QString strDateShort = QString("%1 %2").arg(shortWeek).arg(shortMonth); qDebug()<<"短名称"<<strDateShort;
qDebug()<<"长名称"<<strDateLong;
} MainWindow::~MainWindow()
{ } void MainWindow::dateChanged()
{
QDate dt = dateEdit[]->date();
// 显示星期
switch (dt.dayOfWeek()) {
case :
qDebug()<<"星期一,"<<"今年第"<<dt.dayOfYear()<<"天";
qDebug()<<"该月总共"<<dt.daysInMonth()<<"天,改年总共"<<dt.daysInYear()<<"天";
break;
case :
qDebug()<<"星期二,"<<"今年第"<<dt.dayOfYear()<<"天";
qDebug()<<"该月总共"<<dt.daysInMonth()<<"天,改年总共"<<dt.daysInYear()<<"天";
break;
case :
qDebug()<<"星期三,"<<"今年第"<<dt.dayOfYear()<<"天";
qDebug()<<"该月总共"<<dt.daysInMonth()<<"天,改年总共"<<dt.daysInYear()<<"天";
break;
case :
qDebug()<<"星期四,"<<"今年第"<<dt.dayOfYear()<<"天";
qDebug()<<"该月总共"<<dt.daysInMonth()<<"天,改年总共"<<dt.daysInYear()<<"天";
break;
case :
qDebug()<<"星期五,"<<"今年第"<<dt.dayOfYear()<<"天";
qDebug()<<"该月总共"<<dt.daysInMonth()<<"天,改年总共"<<dt.daysInYear()<<"天";
break;
case :
qDebug()<<"星期六,"<<"今年第"<<dt.dayOfYear()<<"天";
qDebug()<<"该月总共"<<dt.daysInMonth()<<"天,改年总共"<<dt.daysInYear()<<"天";
break;
case :
qDebug()<<"星期七,"<<"今年第"<<dt.dayOfYear()<<"天";
qDebug()<<"该月总共"<<dt.daysInMonth()<<"天,改年总共"<<dt.daysInYear()<<"天";
break;
default:
break;
}
}
#include "mainwindow.h"
#include <QApplication> int main(int argc, char *argv[])
{
QApplication a(argc, argv);
MainWindow w;
w.show(); return a.exec();
}
QT5-控件-QDateEdit 和 日期类QDate的更多相关文章
- 在MonthCalendar控件中选中日期
Calendar.MONTH Calendar now=Calendar.getInstance();System.out.print(now.get(Calendar.MONTH));得到的月份少1 ...
- 背水一战 Windows 10 (37) - 控件(弹出类): MessageDialog, ContentDialog
[源码下载] 背水一战 Windows 10 (37) - 控件(弹出类): MessageDialog, ContentDialog 作者:webabcd 介绍背水一战 Windows 10 之 控 ...
- 背水一战 Windows 10 (36) - 控件(弹出类): ToolTip, Popup, PopupMenu
[源码下载] 背水一战 Windows 10 (36) - 控件(弹出类): ToolTip, Popup, PopupMenu 作者:webabcd 介绍背水一战 Windows 10 之 控件(弹 ...
- 背水一战 Windows 10 (35) - 控件(弹出类): FlyoutBase, Flyout, MenuFlyout
[源码下载] 背水一战 Windows 10 (35) - 控件(弹出类): FlyoutBase, Flyout, MenuFlyout 作者:webabcd 介绍背水一战 Windows 10 之 ...
- QMUI UI库 控件 弹窗 列表 工具类 MD
Markdown版本笔记 我的GitHub首页 我的博客 我的微信 我的邮箱 MyAndroidBlogs baiqiantao baiqiantao bqt20094 baiqiantao@sina ...
- firedac数据集控件的公共祖先类——TFDAdaptedDataSet
firedac数据集控件的公共祖先类——TFDAdaptedDataSet TFDQuery = class(TFDCustomQuery)TFDCustomQuery = class(TFDRdbm ...
- delphi中DateTimePicker控件同时输入日期和时间
将DateTimePicker的Format属性中加入日期格式设成 'yyyy-MM-dd HH:mm',注意大小写 , 将kind设置为dtkTime即可,可以在每次Form onShow时将Dat ...
- WPF 中如何使用第三方控件 ,可以使用WindowsFormsHost 类
允许在 WPF 页面上承载 Windows Forms控件的元素. 命名空间: System.Windows.Forms.Integration 程序集: WindowsFormsIntegr ...
- 修改Devexpress DateEdit控件默认的日期格式和日历风格
最近项目中很多地方使用到DevExpress的DateEdit控件,而且设置都是一致(日期格式.选择日期的日历的风格等).每一次都需要设置太痛苦,因此需要寻找一种高效的解决方式. 一. 设置好一个作为 ...
随机推荐
- (原)python中matplotlib的颜色及线条控制
转载请注明出处: http://www.cnblogs.com/darkknightzh/p/6117528.html 参考网址: http://stackoverflow.com/questions ...
- win7 删除服务
以管理员身份运行命令行工具. 输入 sc delete "服务名" 如若服务名有特殊字符需要加引号. sc dekete apache_pn
- web前端安全相关
burpsuite Burp Suite 是用于攻击web 应用程序的集成平台.它包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程.所有的工具都共享一个能处理并显示HTTP 消 ...
- haslayout引起的IE6 :hover失效
大家都知道IE6之支持<a>标签的:hover为了,但是通常在做实际效果的时候<a>标签 :hover在IE6下会失效, 看代码: [code="html" ...
- 怎样使用pyinstaller打包
安装好pyinstaller后 cd 到pyinstaller.py目录,在命令行输入:python pyinstaller.py 参数 主文件所在目录 如:python pyinstaller.py ...
- FJ省队集训DAY4 T1
直接上题解 #include<cstdio> #include<iostream> #include<cmath> #include<cstring> ...
- Unity中的关节
关节组件一共分为5大类,它们分别是链条关节.固定关节.弹簧关节.角色关节和可配置关节.链条关节(Hinge Joint):将两个物体以链条的形式绑在一起,当力量过大超过链条的固定力矩时,两个物体就会产 ...
- logstash 通过type判断
[elk@zjtest7-frontend type]$ cat input.conf input { file { type => "type_a" path => ...
- library cache: mutex X
我们先来看看 library cache: mutex X . 是个什么东西 The library cache mutex is acquired for similar purposes that ...
- 【转】Win7与Ubuntu 14.04双系统修改启动项顺序
原文网址:http://blog.sina.com.cn/s/blog_b381a98e0102v1gy.html 一.Ubuntu14.04采用默认安装方式的情况 采用默认安装方式,在win7下安装 ...