描述:
我要用MFC做一个ActiveX控件,这个控件基于EditBox控件
我最初做的一个是在向导里面选择了父类CEdit
我现在没有选择父类,想在程序中从CEdit类派生一个新类CMyEdit,将这个类封装
然后在C..Ctrl中调用,但是我不知道具体应该如何实现
希望得到大家的指教
谢谢!
解决方案1:
在 C...Ctrl.h中 添加 CEdit m_ctlEdit;
用向导添加OnCreate方法
在 C...Ctrl.cpp中 添加
int C...Ctrl::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
m_ctlEdit.Create(ES_MULTILINE | WS_CHILD | WS_VISIBLE | WS_TABSTOP | WS_BORDER,
CRect(0, 0, 120, 20), this, IDC_REC_EDIT);
}
其中 IDC_REC_EDIT
要在.h文件中预定义
#define IDC_REC_EDIT 2
对CEdit控件的事件可添加到.cpp中的
BEGIN_MESSAGE_MAP(CDycwAtxComponentsCtrl, COleControl)
//{{AFX_MSG_MAP(CDycwAtxComponentsCtrl)
ON_WM_CREATE()
ON_COMMAND(IDC_REC_EDIT,你的方法名称)
//}}AFX_MSG_MAP
ON_OLEVERB(AFX_IDS_VERB_PROPERTIES, OnProperties)
END_MESSAGE_MAP()