| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1201 人关注过本帖
标题:关于日历控件使用实例的一段代码不太明白
只看楼主 加入收藏
shn521
Rank: 2
等 级:论坛游民
威 望:1
帖 子:56
专家分:52
注 册:2010-6-18
结帖率:73.33%
收藏
已结贴  问题点数:20 回复次数:4 
关于日历控件使用实例的一段代码不太明白
void CCalendarDemoDlg::OnSelchangeCalendar(NMHDR* pNMHDR, LRESULT* pResult)
{
    //获取控件当前所选日期
    SYSTEMTIME st = {0};
    m_calendar.GetCurSel(&st);

    //清空小时、分钟等成员,否则在后续计算中将得到错误的结果
    st.wHour = st.wMinute = st.wSecond = st.wMilliseconds = 0;
    //得到当年的1月1日
    CTime timeBegin(st.wYear, 1, 1, 0, 0, 0);
    //得当所选日期和该年1月1日的差值
    CTime timeSel(st,-1);
    CTimeSpan ts = timeSel - timeBegin;
    //根据差值得到日期数
    TCHAR szOutput[128] = {0};
    _stprintf(szOutput, _T("%d年%d月%d日是%d年的第%d天。"),
        timeSel.GetYear(), timeSel.GetMonth(), timeSel.GetDay(),
        timeSel.GetYear(), ts.GetDays() + 1);
    //输出结果
    SetDlgItemText(IDC_OUTPUT, szOutput);

    *pResult = 0;
}
初值都赋{0}了,不明白为什么能获取控件当前所选日期,
搜索更多相关主题的帖子: 实例 控件 日历 代码 
2010-08-02 17:26
东海一鱼
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:48
帖 子:757
专家分:4760
注 册:2009-8-10
收藏
得分:0 
他只清空了不需要的成员,但是wYear; wMonth; wDayOfWeek; wDay;成员并没有清空啊,
下面的操作只跟这些成员相关,当然没有问题。

举世而誉之而不加劝,举世而非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。彼其于世未数数然也。
2010-08-02 18:30
shn521
Rank: 2
等 级:论坛游民
威 望:1
帖 子:56
专家分:52
注 册:2010-6-18
收藏
得分:0 
以下是引用东海一鱼在2010-8-2 18:30:00的发言:

他只清空了不需要的成员,但是wYear; wMonth; wDayOfWeek; wDay;成员并没有清空啊,
下面的操作只跟这些成员相关,当然没有问题。
谢谢啊,那SYSTEMTIME st = {0};这么赋值是什么意思啊,不太明白,我原以为是把成员都初试为0了。
2010-08-03 09:57
东海一鱼
Rank: 13Rank: 13Rank: 13Rank: 13
等 级:贵宾
威 望:48
帖 子:757
专家分:4760
注 册:2009-8-10
收藏
得分:20 
SYSTEMTIME st = {0}时把结构成员全部初始化为0。
但马上又调用m_calendar.GetCurSel(&st);获得控件选择了。

举世而誉之而不加劝,举世而非之而不加沮,定乎内外之分,辩乎荣辱之境,斯已矣。彼其于世未数数然也。
2010-08-03 11:39
shn521
Rank: 2
等 级:论坛游民
威 望:1
帖 子:56
专家分:52
注 册:2010-6-18
收藏
得分:0 
以下是引用东海一鱼在2010-8-3 11:39:12的发言:

SYSTEMTIME st = {0}时把结构成员全部初始化为0。
但马上又调用m_calendar.GetCurSel(&st);获得控件选择了。
哦,那就是把控件值放在了st对象里了吧,如果是这样那我就明白了,感谢
2010-08-03 12:53
快速回复:关于日历控件使用实例的一段代码不太明白
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.027870 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved