自学内容网 自学内容网

Windows图形界面(GUI)-DLG-C/C++ - 月历控件(MonthCalendar)

目录

月历控件(MonthCalendar)

使用场景

控件操作


月历控件(MonthCalendar)

使用场景

  • 日程安排:用户可以通过月历控件选择特定的日期来安排会议或活动。
  • 事件管理:在事件管理系统中,月历控件可以用来显示特定日期的事件,用户可以选择不同的日期来查看或添加事件。
  • 日期选择:在任何需要用户选择日期的应用中,月历控件都是一个直观且易于使用的选择。
控件操作

  • 日期多选
  • 设置区间
  • 设置范围
  • 获取日期
  •     case WM_INITDIALOG:
        {
            // 初始环境
            INITCOMMONCONTROLSEX initComm = { 0 };
            initComm.dwSize = sizeof(INITCOMMONCONTROLSEX);
            initComm.dwICC = ICC_WIN95_CLASSES;
            InitCommonControlsEx(&initComm);
    
            // 日期多选
            MCS_MULTISELECT;
    
            // 日期范围
            HWND hMc = GetDlgItem(hwnd, IDC_MONTHCALENDAR1);
            MonthCal_SetMaxSelCount(hMc, 14);
    
            // 日期区间
            SYSTEMTIME sysTime[2] = { 0 };
            GetLocalTime(&sysTime[0]);
            sysTime[1] = sysTime[0];
            sysTime[1].wYear += 1;
            MonthCal_SetRange(hMc, GDTR_MIN | GDTR_MAX, sysTime);
    
            return TRUE;    
        }
    
        case WM_NOTIFY:
        {
            LPNMHDR info = (LPNMHDR)lParam;
    
            if (info->idFrom == IDC_MONTHCALENDAR1 && info->code == MCN_SELCHANGE)
            {
                LPNMSELCHANGE pSel = (LPNMSELCHANGE)lParam;
                SYSTEMTIME timeStr = pSel->stSelStart;
                SYSTEMTIME timeEnd = pSel->stSelEnd;
                OutputDebugString(L"MCN_SELCHANGE");
            }
    
            return TRUE;
        }
    

原文地址:https://blog.csdn.net/2301_80612536/article/details/140595542

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!