|
VC++ ATL中为对话框时间控件IDC_DATETIMEPICKER赋值时间"14:30:00"的完整实现代码
代码说明:此实现包含时间格式设置、字符串解析和控件赋值完整流程,需确保已包含必要头文件并初始化通用控件。
- #include <windows.h>
- #include <commctrl.h>
- #include <atlbase.h>
- #include <atlstr.h>
- // 在对话框类中实现
- LRESULT OnInitDialog(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
- {
- // 获取时间控件句柄
- HWND hTimeCtrl = GetDlgItem(IDC_DATETIMEPICKER);
-
- // 设置仅显示时间格式
- ::SendMessage(hTimeCtrl, DTM_SETFORMAT, 0, (LPARAM)_T("HH':'mm':'ss"));
- // 解析时间字符串
- SYSTEMTIME st = {0};
- st.wYear = 2025; // 必须设置年份
- st.wMonth = 7;
- st.wDay = 4;
-
- // 解析"14:30:00"格式
- _stscanf_s(_T("14:30:00"), _T("%hu:%hu:%hu"),
- &st.wHour, &st.wMinute, &st.wSecond);
- // 设置时间值
- ::SendMessage(hTimeCtrl, DTM_SETSYSTEMTIME, GDT_VALID, (LPARAM)&st);
-
- return 1;
- }
复制代码
|
|