CDateTimeCtrl::SetTime使用求助

vsita 2013-06-27 10:47:13
需求是主界面有一时间控件,弹出对话框后该对话框也有时间控件,接受显示主界面的时间,对话框退出后将界面时间更新为对话框时间,见下图

我在实现中两个时间空间均创建CDateTimeCtrl型变量,然后使用GetTime,SetTime赋值,代码如下
MyDlg dlg;
CTime time;
m_Time1.GetTime(time);
dlg.m_DialogTime.SetTime(&time);
dlg.DoModal();
在SetTime时老是报故,调了很久啊,网上搜索发现有人有同样问题并说Debug模式报错,Release模式则正常,我试了果然如此,麻烦各位告知下为啥这样啊

另一个问题是因SetTime出错,我后来采用构建Ctime变量赋值方式进行,可以进行时间交互,程序打开后时间控件默认显示8:00:00,后来在使用中发现该控件设置早于8点的时间就出错,请问是为啥啊,谢谢大家了
...全文
325 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
vsita 2013-07-03
  • 打赏
  • 举报
回复
懂了 谢谢大家
sg_knight 2013-06-28
  • 打赏
  • 举报
回复

MyDlg dlg;
CTime time;
m_Time1.GetTime(time);
dlg.m_time = time;
dlg.DoModal();
然后在界面初始化时赋值 m_time是一个CTime变量

CMyDlg::OnInitDialog()
{
    m_DialogTime.SetTime(&m_time);
}
zybjtu 2013-06-28
  • 打赏
  • 举报
回复
MyDlg dlg; CTime time; m_Time1.GetTime(time); dlg.DoModal(); dlg.m_DialogTime.SetTime(&time);
shen_wei 2013-06-28
  • 打赏
  • 举报
回复
先显示对话框,在赋值。。。
孤客天涯 2013-06-28
  • 打赏
  • 举报
回复
你对话框都没创建出来就设置控件的值,当然会出错,对话框都没出来,控件肯定也没创建

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧