应用BCGControlBar在工具栏上添加datetimepicker控件

步骤:

1、在工具栏上定义菜单比如ID_DATE,ID_TIME

2、在CMainFrm中修改

(1)

LRESULT CMainFrame::OnToolbarReset(WPARAM wp,LPARAM)
{
    //----Example----//

    UINT uiToolBarId = (UINT) wp;

    switch (uiToolBarId)
    {
    case IDR_MAINFRAME:
        {
            CBCGPToolbarDateTimeCtrl dateButton (ID_DATE,
                CImageHash::GetImageOfCommand (ID_DATE, FALSE));
            m_wndToolBar.ReplaceButton (ID_DATE, dateButton);

            CBCGPToolbarDateTimeCtrl timeButton (ID_TIME,
                CImageHash::GetImageOfCommand (ID_TIME, FALSE),
                DTS_TIMEFORMAT | DTS_UPDOWN);
            m_wndToolBar.ReplaceButton (ID_TIME, timeButton);
        }
        break;
    }

    //----Example----//

    return 0;
}

 

(2)

void CMainFrame::OnViewCustomize()
{
    //------------------------------------
    // Create a customize toolbars dialog:
    //------------------------------------
    CBCGPToolbarCustomize* pDlgCust = new CBCGPToolbarCustomize (this,
        TRUE /* Automatic menus scaning */
        );

    //----Example----//

    CBCGPToolbarDateTimeCtrl dateButton (ID_DATE,
        CImageHash::GetImageOfCommand (ID_DATE, FALSE));
    pDlgCust->ReplaceButton (ID_DATE, dateButton);

    CBCGPToolbarDateTimeCtrl timeButton (ID_TIME,
        CImageHash::GetImageOfCommand (ID_TIME, FALSE),
        DTS_TIMEFORMAT | DTS_UPDOWN);
    pDlgCust->ReplaceButton (ID_TIME, timeButton);

    //----Example----//

    pDlgCust->Create ();
}

 

3、响应菜单

添加OnDate、OnTime的菜单响应消息

实现如下:

void CMainFrame::OnDate()
{
    SYSTEMTIME t;
    CString str;
    CBCGPToolbarDateTimeCtrl::GetTimeAll(ID_DATE,&t);
    CString sDate,sTime;
    COleDateTime sd(t);
    sDate=sd.Format("%y-%m-%d");
    CBCGPToolbarDateTimeCtrl::GetTimeAll(ID_TIME,&t);
    COleDateTime st(t);
    sTime=st.Format("%H:%M:%S");
    str.Format("%s %s",sDate,sTime);
    _StartTime.ParseDateTime(str);
}

void CMainFrame::OnTime()
{
    SYSTEMTIME t;
    CString str;
    CBCGPToolbarDateTimeCtrl::GetTimeAll(ID_DATE,&t);
    CString sDate,sTime;
    COleDateTime sd(t);
    sDate=sd.Format("%y-%m-%d");
    CBCGPToolbarDateTimeCtrl::GetTimeAll(ID_TIME,&t);
    COleDateTime st(t);
    sTime=st.Format("%H:%M:%S");
    str.Format("%s %s",sDate,sTime);
    _StartTime.ParseDateTime(str);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值