OCX控件中界面如何捕获键盘消息

最近在做一个mfc的ActiveX控件,带界面的。首先在工程ResultSubmit的资源视图中Dialog中添加资源IDD_FORMVIEW,修改该窗体的属性:Border——None,Static Edge——true,Style——Child,Visible——True。然后为该窗体添加类CActXDlg,在ResultSubmitCtrl.h中添加变量CActXDlg ActXInterface,重写其中的OnCreate和OnSize消息,在OnCreate消息中添加如下代码:ActXInterface.Create(IDD_FORMVIEW,this);在OnSize消息中添加如下代码:

    CRect Rect;
    GetClientRect(&Rect);
    if(IsWindow(ActXInterface.GetSafeHwnd()))
    {
        ActXInterface.MoveWindow(Rect,TRUE);
    }

注释掉OnDraw中的代码:/*pdc->FillRect(rcBounds, CBrush::FromHandle((HBRUSH)GetStockObject(WHITE_BRUSH))); pdc->Ellipse(rcBounds);*/即可。

在CActXDlg所在的窗体中捕获键盘消息:在OnCreate中添加代码OnActivateInPlace(TRUE,NULL); 在OnMouseActivate中添加代码

    if (!m_bUIActive)
    {
        OnActivateInPlace (TRUE, NULL);
    }


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值