The dialogue frame used as ActiveX control has OK button, when I click OK button, it should pop out message. It works in ActiveX Control test container. But when I put it in a application(Dialog Window) and run, when I click OK button, the application just hang up.
For creating Dialog frame as an ActiveX control .i follow the following code.
I wanted to create a control which would behave as a dialog or formview (you can place controls here). There is a simple way to do it - to take advantage of ActiveX.
Create a new MFC ActiveX ControlWizard workspace (no need to special options).
Insert a new dialog resource named IDC_MYDIALOG (check following: style - child, border - dialog frame, visible, control, static edge)
Insert a new MFC class named CMyDialog (base class CDialog)
Add CMyDialog m_MyDialog member to your CDialogCtrl header source (don't forget to add #include "MyDialog.h")
Using classwizard add a member function OnCreate (WM_CREATE)
int CDialogCtrl::OnCreate(LPCR
EATESTRUCT
lpCreateStruct)
{
if (COleControl::OnCreate(lpC
reateStruc
t) == -1)
return -1;
m_MyDialog.Create(IDD_MYDI
ALOG, this);
return 0;
}
Modify the member function OnDraw (the dialog's size depends on the WIDTH and HEIGHT specified in the HTML file):
void CDialogCtrl::OnDraw(CDC* pdc, const CRect& rcBounds, const CRect& rcInvalid)
{
// TODO: Replace the following code with your own drawing code.
// pdc->FillRect(rcBounds, CBrush::FromHandle((HBRUSH
)GetStockO
bject(WHIT
E_BRUSH)))
;
// pdc->Ellipse(rcBounds);
m_MyDialog.MoveWindow(rcBo
unds, TRUE);
}
pls help me.
bye
Start Free Trial