终极工具箱日期时间选择器控件





4.00/5 (2投票s)
COXDateTimeCtrl 提供了一种方便且灵活的日期/时间输入和显示方法。
访问 终极工具箱 主页,以获取终极工具箱库的概述和配置指南。
此示例的源代码和项目文件可以在示例项目下载的 samples\gui\DateTimePicker 目录中找到。
概述
COXDateTimeCtrl
对象封装了日期和时间选择器控件的功能。日期和时间选择器控件(DTP 控件)提供了一个简单的界面,用于与用户交换日期和时间信息。此界面包含字段,每个字段显示控件中存储的日期和时间信息的一部分。用户可以通过更改给定字段中字符串的内容来更改控件中存储的信息。用户可以使用鼠标或键盘从一个字段移动到另一个字段。
使用 COXDateTimeCtrl
日期和时间选择器控件 (COXDateTimeCtrl
) 实现了一种直观且可识别的输入或选择特定日期的方法。控件的主要界面在功能上类似于组合框。但是,如果用户展开控件,则会显示一个月份日历控件(默认情况下),允许用户指定特定日期。选择日期后,月份日历控件将自动消失。
注意:要在您的项目中同时使用 CDateTimePicker
和 COXMonthCalCtrl
类,您必须包含 OXDateTimeCtrl.h。
创建日期和时间选择器控件
日期和时间选择器控件的创建方式取决于您是在对话框中使用该控件还是在非对话框窗口中创建该控件。
直接在对话框中使用 COXDateTimeCtrl
Visual C++ v6.0
在对话框编辑器中,将日期和时间选择器控件添加到您的对话框模板资源中。指定其控件 ID。使用日期和时间选择器控件的“属性”对话框,指定所需的任何样式。使用 ClassWizard 在对话框类中映射处理函数,以处理您需要处理的任何日期时间选择器控件通知消息。在 OnInitDialog
中,设置 COXDateTimeCtrl
对象的任何其他样式。
Visual C++ v5.0
在对话框编辑器中,将静态控件添加到您的对话框模板资源中(它将是 DTP 控件的占位符)。指定其控件 ID。在 OnInitDialog
中,您可以使用以下代码将静态控件替换为我们的 DTP 控件
CWnd *pFrame= GetDlgItem(IDC_DATETIMEPICKER);
CRect rcWnd;
pFrame>GetWindowRect(rcWnd);
pFrame>DestroyWindow();
ScreenToClient(rcWnd);
m_ctlDateTimePicker.Create(WS_CHILD|WS_VISIBLE|WS_TABSTOP, rcWnd,this,
IDC_DATETIMEPICKER);
在非对话框窗口中使用 COXDateTimeCtrl
在视图或窗口类中声明控件。调用控件的 Create
成员函数,可能在 OnInitialUpdate
中,可能在父窗口的 OnCreate
处理函数中(如果您要对控件进行子类化)。然后您可以设置控件的样式。
有关从控件设置和检索数据的成员函数的说明,请参阅编译后的 HTML 帮助的“图形用户界面”部分中的 COXDateTimeCtrl
类参考。
历史
首次 CodeProject 发布于 2007 年 8 月。