利用Qt的QDateTimeEdit设置起始时间(即开始时间大于结束时间)
来源:互联网 发布:张大宇数据 编辑:程序博客网 时间:2024/06/05 09:40
利用Qt的QDateTimeEdit设置起始时间(即开始时间大于结束时间)
1.头文件qdatetimeeditpractise.h
#ifndef QDATETIMEEDITPRACTISE_H#define QDATETIMEEDITPRACTISE_H#include <QtGui/QWidget>#include "ui_qdatetimeeditpractise.h"class QDateTimeEditPractise : public QWidget{ Q_OBJECTpublic: QDateTimeEditPractise(QWidget *parent = 0, Qt::WFlags flags = 0); ~QDateTimeEditPractise(); QDateTimeEdit * endDateTimeEdit; QDateTimeEdit * startDateTimeEdit; public slots: void setStartDateTime();//设置起始时间的范围 void setEndDateTime();//设置结束时间的范围private: Ui::QDateTimeEditPractiseClass ui;};#endif // QDATETIMEEDITPRACTISE_H
2.cpp文件qdatetimeeditpractise.cpp
#include "qdatetimeeditpractise.h"#include <QDateTimeEdit>#include <QDebug>QDateTimeEditPractise::QDateTimeEditPractise(QWidget *parent, Qt::WFlags flags) : QWidget(parent, flags){ ui.setupUi(this); startDateTimeEdit = ui.startDateTimeEdit; endDateTimeEdit = ui.endDateTimeEdit; startDateTimeEdit->setDateTime(QDateTime::currentDateTime().addDays(-1)); endDateTimeEdit->setDateTime(QDateTime::currentDateTime()); connect(startDateTimeEdit,SIGNAL(dateTimeChanged(QDateTime)),this, SLOT(setEndDateTime())); connect(endDateTimeEdit,SIGNAL(dateTimeChanged(QDateTime)),this,SLOT(setStartDateTime()));}void QDateTimeEditPractise::setStartDateTime(){ startDateTimeEdit->setMaximumDateTime(endDateTimeEdit->dateTime());}void QDateTimeEditPractise::setEndDateTime(){ endDateTimeEdit->setMinimumDateTime(startDateTimeEdit->dateTime());}QDateTimeEditPractise::~QDateTimeEditPractise(){}
虽然效果实现出来了,但是无法理解的是:为什么在槽函数中添加了和信号一样的参数后,程序编译报错。例如:connect(startDateTimeEdit,SIGNAL(dateTimeChanged(QDateTime)),this, SLOT(setEndDateTime(QDateTime)));而且信号和槽函数采用引用类型的参数,编译也会报错,例如:connect(startDateTimeEdit,SIGNAL(dateTimeChanged(QDateTime &)),this, SLOT(setEndDateTime(QDateTime)));
我看Qt的帮助文档中的信号函数的参数就是引用类型???本人使用的Qt版本是4.8.6,望各位大神能够给出答案。
0 0
- 利用Qt的QDateTimeEdit设置起始时间(即开始时间大于结束时间)
- mydate97 结束时间大于起始时间
- datepicker,结束时间必须大于开始时间
- My97DatePicker 日期控制,开始时间不能大于结束时间,结束时间不能小于开始时间
- 时间选择框(My97控件)控制结束时间大于开始时间的方法
- 开始时间和结束时间的时间间隔不能大于24小时
- js 日期选择判断结束时间大于开始时间
- 97DatePicker结束时间大于开始时间控制
- easyui 日期框,结束时间大于开始时间
- 两个时间比较大小,结束日期不能大于起始日期,起始日期不能大于当前日期
- AVAudioPlayer 的开始时间和结束时间设置
- WdatePicker 设置开始日期不能大于结束日期且日期不能大于当前时间
- laydate范围选择,结束时间大于开始时间同时大于当前时间
- 自己封装的关于jquery easyUI的datetimebox开始时间不能大于结束时间的判断
- 自己封装的关于jquery easyUI的datetimebox开始时间不能大于结束时间的判断
- jquery validate 的自定义验证开始时间不能大于结束时间
- jquery validate 的自定义验证开始时间不能大于结束时间
- 本周的开始时间和结束时间
- Leetcode 100 : same Tree
- HDU-4339 Query(树状数组+二分)
- Linkedin工程师是如何优化他们的Java代码的
- NYOJ33--蛇形填数
- Android自定义ProgressDialog进度等待框
- 利用Qt的QDateTimeEdit设置起始时间(即开始时间大于结束时间)
- LINUX-内核-中断分析-中断向量表(1)-x86
- 大数相加+斐波那契数列(1)
- 转义字符以及类型的求取
- MySQL 1064 错误解决方法
- 【Leetcode】之Remove Duplicates from Sorted List II
- android sensor架构详解
- 2016/7/18
- 集合框架