永发信息网

关于qt的日期问题

答案:2  悬赏:70  手机版
解决时间 2021-03-15 05:29
我现在要写了个通讯录,然后要写个能自动找出未来五天生日的联系人的函数,小白现在有如下问题想请教各位热心大神:
1、如何把每个联系人的生日储存起来?是把每个联系人的生日作为一个QDate对象,然后再储存起来吗?
2、如果是这样,请问QDate的对象(日期)是如何显示在窗口上的?
3(最重要的)、因为我现在只能用纯代码写,所以不知如何写出一个界面可以用户自己键入生日后再保存的?
最佳答案
1、存储时使用QString即可;
2、显示的时候用静态方法“QDate QDate::fromString(const QString & string, const QString & format)”,参数1传联系人信息中存储的生日字符串比如“19890101”,参数2表示参数1的数据格式传“yyyyMMdd”(即对应格式为“年年年年月月日日”);
3、输入的时候用QLineEdit输入的生日字符串,后面加个button响应clicked事件,button按下时检查输入的字符串是否符合格式,如果符合则将QLineEdit中的字符串保存到联系人信息中,否则让用户检查输入;
注意:三个过程中生日信息的字符串的格式要保持一致(比如“yyyyMMdd”格式)。
全部回答
qdate, qdatetime, qtime; qdate应该是你需要的。qdate有重载> < = >= <= !=操作符。不过好像没有+ -操作符。你可以将目前日期用adddays函数加5天,再最个比较日期是否小于等于计算出的时间。 qdate xcurdate = qdate::currentdate(); qdate xfuturedate = xcurdate.adddays(5); qlist v; for(int i = 0; i < v.size(); i++){ qdate xdate = v[i]; if(xdate <= xfuturedate){ qdebug() << "找到:" << xdate; } }
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
sfc勇者斗恶龙3 祈祷戒指怎么用?
11:10一9:30等于多少
房子长期不住人能不能把屋里放几盆水
求好看600万字以上的玄幻小说
省事度事是什么意思
求知堂这个地址在什么地方,我要处理点事
英雄联盟客服联系不上怎么办,我号被别人弄封
请大家帮帮忙,我现在想换份工作,谁能告诉我
五个月的哈士奇拉屎偶尔有一层白色的黏膜怎么
win10电脑用什么软件清理垃圾
淘宝,我是买家,由于物流公司原因退货可能会
意大利珠宝设计学院和中国地质大学哪个好
植物大战僵尸ol版,10级了植物参战数为什么开
桥头排骨大厦店我想知道这个在什么地方
12月21日内蒙-赤峰下雪了吗?
推荐资讯
so did I 和neither did I分别是什么意思
注册过的手机号换另一个手机号绑定以后 现在
春季高考可以报哪些专业课
bwy2-43-2.2kg摆线针轮减速机的速比是多少
英语词典的编排次序
哈尔滨日新自动化设备有限公司地址在哪,我要
成都 途经 泸沽湖 到香 格里拉 的路线
麻雀47集14:20分出现的背景音乐是什么? 只有
红楼梦中最先提到乌眼鸡的是谁
黔林酒店在什么地方啊,我要过去处理事情
我是一个不爱说话的人,我想去专卖店做服装导
p2p投资靠谱吗?收益如何?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?