VC:其他控件(CProgressCtrl、CScrollBar、CDateTimeCtrl、CMonthCalCtrl)

1、进度条

       m_progressCtrl.SetRange(0,100);

       for(int i=0;i<100;i++)

       {

              m_progressCtrl.SetPos(i);

              Sleep(100);

       }

       AfxMessageBox("进度条到达终点");

 

2、滑块控件:添加WM_VSCROLL消息。

void COtherCtrlDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)

{

       // TODO: Add your message handler code here and/or call default

       m_SliderCtrl.SetRange(0,100);

       CString str;

       str.Format("%d",m_SliderCtrl.GetPos());

       SetDlgItemText(IDC_EDIT1,str);

       CDialog::OnHScroll(nSBCode, nPos, pScrollBar);

}

 

3、时间控件:添加MCN_SELECT、或MCN_SELCHANGE消息映射

       1)CDateTimeCtrl:

       void COtherCtrlDlg::OnSelectMonthcalendar1(NMHDR* pNMHDR, LRESULT* pResult)

       {

              // TODO: Add your control notification handler code here

              CString str;

              SYSTEMTIME time;

              m_date.GetCurSel(&time);

              str.Format("%d年 %d月 %d 日  星期%d",time.wYear,time.wMonth,time.wDay,time.wDayOfWeek);

              AfxMessageBox(str);

              *pResult = 0;

       }

       2)CMonthCalCtrl:

       void COtherCtrlDlg::OnCloseupDatetimepicker1(NMHDR* pNMHDR, LRESULT* pResult)

       {

              // TODO: Add your control notification handler code here

              CString str;

              SYSTEMTIME time;

              m_time.GetTime(&time);

              //m_date.GetCurSel(&time);

              str.Format("%d年 %d月 %d 日  星期%d",time.wYear,time.wMonth,time.wDay,time.wDayOfWeek);

              m_date.SetCurSel(&time);

              AfxMessageBox(str);

              *pResult = 0;

       }

posted @ 2012-10-17 22:33  慧由心生  阅读(1029)  评论(0编辑  收藏  举报